Kotlin
जावा डेवलपर्स के लिए कोटलिन
खोज…
परिचय
कोटलिन में आने वाले अधिकांश लोगों की जावा में प्रोग्रामिंग पृष्ठभूमि होती है।
यह विषय जावा से कोटलिन की तुलना में उदाहरण एकत्र करता है, सबसे महत्वपूर्ण अंतरों को उजागर करता है और उन रत्नों को कोटलिन जावा पर प्रदान करता है।
वेरिएबल्स की घोषणा
कोटलिन में, चर घोषणाएं जावा की तुलना में थोड़ी अलग दिखती हैं:
val i : Int = 42
वे या तो साथ शुरू
val
याvar
, घोषणा केfinal
( "वैल ue") या वर iable।नाम के बाद टाइप किया जाता है
:
कोटलिन के प्रकार के निष्कर्ष के लिए स्पष्ट प्रकार की घोषणा को स्वीकार किया जा सकता है यदि संकलक एक प्रकार के साथ एक असाइनमेंट है तो स्पष्ट रूप से पता लगाने में सक्षम है
जावा | Kotlin |
---|---|
int i = 42; | var i = 42 ( या var i : Int = 42 ) |
final int i = 42; | val i = 42 |
त्वरित तथ्य
- कोटलिन की जरूरत नहीं है
;
बयानों को समाप्त करने के लिए - कोटलिन अशक्त है
- कोटलिन 100% जावा इंटरऑपरेबल है
- कोटलिन के पास कोई आदिम नहीं है (लेकिन संभव हो तो JVM के लिए उनके वस्तु समकक्षों का अनुकूलन)
- कोटलिन वर्गों में गुण होते हैं, फ़ील्ड नहीं
- कोटलिन ऑटो-जनरेटेड
equals
/hashCode
विधियों और फील्डhashCode
साथ डेटा कक्षाएं प्रदान करता है - कोटलिन में केवल रनटाइम अपवाद हैं, कोई जाँच अपवाद नहीं है
- कोटलिन के पास कोई
new
कीवर्ड नहीं है । किसी अन्य विधि की तरह निर्माणकर्ता को बुलाकर वस्तुओं का निर्माण किया जाता है। - कोटलिन (सीमित) ऑपरेटर ओवरलोडिंग का समर्थन करता है। उदाहरण के लिए, किसी मानचित्र के मान को एक्सेस करना इस तरह लिखा जा सकता है:
val a = someMap["key"]
- कोटलिन को न केवल जेवीएम के लिए बाइट कोड के लिए संकलित किया जा सकता है, बल्कि जावा स्क्रिप्ट में भी, आपको कोटलीन में बैकएंड और फ्रंटेंड कोड लिखने में सक्षम बनाता है।
- कोटलिन जावा 6 के साथ पूरी तरह से संगत है , जो पुराने एंड्रॉइड डिवाइसों के समर्थन के लिए विशेष रूप से दिलचस्प है (ऐसा नहीं)
- Kotlin एंड्रॉइड डेवलपमेंट के लिए आधिकारिक रूप से समर्थित भाषा है
- कोटलिन के संग्रह में परस्पर परिवर्तनशील और अपरिवर्तनीय संग्रह के बीच अंतर्विरोध हैं।
- कोटलिन कॉरआउट (प्रयोगात्मक) का समर्थन करता है
समानता और पहचान
समानता के लिए कोटलिन ==
का उपयोग करता है (अर्थात, कॉल आंतरिक रूप से equals
होता है) और ===
रेफरल पहचान के लिए।
जावा | Kotlin |
---|---|
a.equals(b); | a == b |
a == b; | a === b |
a != b; | a !== b |
देखें: https://kotlinlang.org/docs/reference/equality.html
IF, TRY और अन्य अभिव्यक्ति हैं, न कि कथन
कोटलिन में, if
, try
और अन्य अभिव्यक्ति हैं (इसलिए वे एक मूल्य लौटाते हैं) (शून्य) बयानों के बजाय।
इसलिए, उदाहरण के लिए, कोटलिन में जावा का टर्नरी एल्विस ऑपरेटर नहीं है , लेकिन आप कुछ इस तरह से लिख सकते हैं:
val i = if (someBoolean) 33 else 42
इससे भी अधिक अपरिचित, लेकिन समान रूप से अभिव्यंजक, try
अभिव्यक्ति है :
val i = try {
Integer.parseInt(someString)
}
catch (ex : Exception)
{
42
}