Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Android

คีย์เวิร์ด String[] ใน Java เทียบเท่าใน Kotlin คืออะไร

ภาพรวม

ใน Java ใช้ String[] สำหรับ Array ของ String ใน Kotlin ไม่มี Syntax แบบ `Type[]` แต่ใช้ Generic Class Array<T> และฟังก์ชันช่วยสร้าง

การสร้าง String Array ใน Kotlin

1. arrayOf() - สร้างพร้อมค่าเริ่มต้น

fun main() {
    val strings = arrayOf("Apple", "Banana", "Cherry")
    // Type Inference: Array
    
    val explicit: Array = arrayOf("A", "B") // ระบุ Type ชัดเจน
}

2. arrayOfNulls() - สร้าง Array ขนาดคงที่ เต็ม null

fun main() {
    // ต้องเป็น Nullable Type: Array
    val nullableArray: Array = arrayOfNulls(3)
    // [null, null, null]
    
    nullableArray[0] = "First"
    // [First, null, null]
}

3. Array Constructor - สร้างด้วย Lambda

fun main() {
    // Array ขนาด 5 ค่า = "Item {index}"
    val items = Array(5) { index -> "Item $index" }
    // [Item 0, Item 1, Item 2, Item 3, Item 4]
}

4. emptyArray() - Array ว่าง

fun main() {
    val empty: Array = emptyArray()
    // size = 0
}

Java String[] vs Kotlin Array

JavaKotlinหมายเหตุ
String[] arr = new String[5];val arr = Array(5) { null } (ต้องเป็น Array)Kotlin Array ไม่มีค่า Default ต้องระบุ
String[] arr = {"A", "B"};val arr = arrayOf("A", "B")
arr.lengtharr.sizeProperty แทน Field
arr[0]arr[0]Operator Overloading (get/set)
Varargs: void foo(String... args)fun foo(vararg args: String)Varargs ใน Kotlin

Main Function Parameter


// Java
public static void main(String[] args)

// Kotlin
fun main(args: Array) { ... }
// หรือสั้นๆ (args ถูกสร้างอัตโนมัติถ้าจำเป็น)
fun main() { ... }

Primitive Array vs Object Array


// Java: int[] -> Kotlin: IntArray (Primitive, ไม่ใช่ Generic)
val intArray = intArrayOf(1, 2, 3) // IntArray
val intArray2 = IntArray(5) { it * 2 }

// Java: String[] -> Kotlin: Array (Object, Generic)
val strArray = arrayOf("A", "B") // Array

การแปลงระหว่าง Java และ Kotlin

  • Kotlin Array → Java String[] (Automatic)
  • Java String[] → Kotlin Array (Automatic)
  • ใช้ @JvmField / @JvmStatic หากต้องการควบคุม Bytecode ให้แม่นยำ

สรุป

Java String[] ↔ Kotlin Array
สร้างด้วย: arrayOf(), Array(size) { init }, arrayOfNulls(), emptyArray()