JVM मंच पर, Kotlin Array<T>
typesJava arrays है, जो, जावा सामान्य प्रकार के विपरीत, type erasure के अधीन नहीं हैं पर मैप किए जाते हैं, वे reified बजाय कर रहे हैं।
इसका मतलब है कि, अन्य तत्वों के साथ, विभिन्न तत्वों के साथ सरणी अलग-अलग वर्गों द्वारा प्रदर्शित की जाती हैं, जिनमें अलग-अलग Class<T>
टोकन होते हैं, और इन वर्ग टोकन में तत्व प्रकार के बारे में भी जानकारी होती है। जेनेरिक सरणी प्रकार नहीं है, लेकिन विभिन्न तत्व प्रकारों के साथ सरणी के लिए केवल सरणी प्रकार हैं।
के बाद से सामान्यArray<T>
मौजूद नहीं है, तो आप अपने प्रतिबिंब या तो उपयोग नहीं कर सकते, तो आप केवल निर्दिष्ट तत्व प्रकार के साथ सरणी प्रकार के क्रम प्रकार की जानकारी प्राप्त कर सकते हैं:
val c = Array<Int>::class // corresponds to Java Integer[] type
val d = Array<Array<String>>::class // corresponds to Java String[][]
val e = IntArray::class // corresponds to Java int[]
आप जांच करने के लिए की जरूरत है एक मनमानी वर्ग एक सरणी प्रकार है, आप इसे जावा प्रतिबिंब के साथ कर सकते हैं:
val c = Array<Int>::class
println(c.java.isArray) // true