1. Câu hỏi
2. Phân tích
Bài này kiểm tra kỹ năng về khai báo mảng, kiểu dữ liệu và cách sử dụng mạng, chúng ta sẽ đi từng đáp án
1. short arr [] = new short[2];
Khai báo hợp lệ, nhưng mảng chỉ có 2 phần tử -> ArrayIndexOutOfBoundsException at runtime.
2. byte [] arr = new byte[10];
Khai báo hợp lệ, có 10 phần tử byte-> In ra kết quả như mong muốn
3. short [] arr; arr = new short[3];
Khai báo hợp lệ, có 3 phần tử short-> In ra kết quả như mong muốn
4. short [2] arr;
Khai báo không hợp lệ -> Compile error
5. short [3] arr;
Khai báo không hợp lệ -> Compile error
6. int [] arr = new int[]{100, 100};
Khai báo hợp lệ, nhưng mảng chỉ có 2 phần tử -> ArrayIndexOutOfBoundsException at runtime.
7. int [] arr = new int[]{0, 0, 0, 0};
Khai báo hợp lệ, có 4 phần tử kiểu int-> In ra kết quả như mong muốn
8. short [] arr = {};
Khai báo hợp lệ, nhưng mảng không có phần tử -> ArrayIndexOutOfBoundsException at runtime.
9. short [] arr = new short[2]{5, 10};
Khai báo không hợp lệ, kích thước của mảng không thể được khai báo nếu sử dụng {} ddeer assign dữ liệu
-> vậy có 3 đáp án đúng 2,3 và 7.
3. Kết luận
Bạn có thể gõ code vào IDE để chạy lại và kiểm tra Source cho câu hỏi