ฉันต้องได้ความยาวของอาร์เรย์ 2 มิติสำหรับทั้งแถวและคอลัมน์ ฉันทำสิ่งนี้สำเร็จโดยใช้รหัสต่อไปนี้:
public class MyClass {
public static void main(String args[])
{
int[][] test;
test = new int[5][10];
int row = test.length;
int col = test[0].length;
System.out.println(row);
System.out.println(col);
}
}
พิมพ์ออกมา 5, 10 ตามที่คาดไว้
ตอนนี้ดูที่บรรทัดนี้:
int col = test[0].length;
โปรดสังเกตว่าฉันต้องอ้างอิงแถวใดแถวหนึ่งเพื่อรับความยาวคอลัมน์ สำหรับฉันดูเหมือนว่าน่าเกลียดอย่างไม่น่าเชื่อ นอกจากนี้หากอาร์เรย์ถูกกำหนดเป็น:
test = new int[0][10];
จากนั้นรหัสจะล้มเหลวเมื่อพยายามรับความยาว มีวิธีที่แตกต่าง (ฉลาดกว่า) ในการทำสิ่งนี้หรือไม่?