Tại sao đầu ra trong ví dụ này là ?Mảng Java - Tại sao đầu ra '1'?
public static void main(String[] args){
int[] a = { 1, 2, 3, 4 };
int[] b = { 2, 3, 1, 0 };
System.out.println(a [ (a = b)[3] ]);
}
Tôi nghĩ nó sẽ là . ví dụ, khái niệm được đánh giá là:
a[(a=b)[3]]
a[b[3]] //because a is now pointing to b
a[0]
nên không phải là một [0] được vì một được trỏ đến b?
Xin cảm ơn trước.
Người đàn ông, C có điều này đơn giản hơn nhiều với điều "hành vi không xác định"! – Kos
+1 cho các bài học kỳ lạ! –
Đây là những loại câu hỏi mà một số bài kiểm tra Java hoặc người phỏng vấn muốn hỏi, mặc dù không ai lành mạnh sẽ viết mã như thế. – GreenieMeanie