Bạn có thể trực tiếp viết mảng trong Java hiện đại mà không cần trình khởi tạo. Ví dụ của bạn bây giờ là hợp lệ. Nói chung, tốt nhất là đặt tên cho tham số.
String[] array = {"blah", "hey", "yo"};
hoặc là
int[] array = {1, 2, 3};
Nếu bạn phải nội tuyến, bạn sẽ cần khai báo loại:
functionCall(new String[]{"blah", "hey", "yo"});
hoặc sử dụng varargs (đối số biến)
void functionCall(String...stringArray) {
// Becomes a String[] containing any number of items or empty
}
functionCall("blah", "hey", "yo");
Hy vọng các nhà phát triển của Java sẽ cho phép khởi tạo ngầm trong tương lai
Cập nhật: Trả lời của Kotlin
Kotlin đã làm việc với các mảng dễ dàng hơn nhiều! Đối với hầu hết các loại, chỉ cần sử dụng arrayOf
và nó sẽ ngầm xác định loại. Không có gì để bỏ trống.
arrayOf("1", "2", "3") // String
arrayOf(1, 2, 3) // Int
arrayOf(1, 2, "foo") // Any
arrayOf<Int>(1, 2, 3) // Set explict type
arrayOf<String>() // Empty String array
Nguyên thủy có chức năng tiện ích. Không có gì để bỏ trống.
intArrayOf(1, 2, 3)
charArrayOf()
booleanArrayOf()
longArrayOf()
shortArrayOf()
byteArrayOf()
Nếu bạn đã có Collection
và muốn chuyển đổi nó thành một mảng nội tuyến, chỉ cần sử dụng:
collection.toTypedArray()
Nếu bạn cần ép buộc một kiểu mảng, hãy sử dụng:
array.toIntArray()
array.toLongArray()
array.toCharArray()
...