खोज…


परिचय

कोटलिन में आने वाले अधिकांश लोगों की जावा में प्रोग्रामिंग पृष्ठभूमि होती है।

यह विषय जावा से कोटलिन की तुलना में उदाहरण एकत्र करता है, सबसे महत्वपूर्ण अंतरों को उजागर करता है और उन रत्नों को कोटलिन जावा पर प्रदान करता है।

वेरिएबल्स की घोषणा

कोटलिन में, चर घोषणाएं जावा की तुलना में थोड़ी अलग दिखती हैं:

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
}


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow