Theo javadoc của Class
java.lang.Class và bình đẳng
Mỗi mảng cũng thuộc về một lớp học mà được phản ánh như một Class đối tượng được chia sẻ bởi tất cả các mảng với các loại nguyên tố cùng và số kích thước.
Nhưng khi tôi chạy dưới
int[] intArray = { 1, 2 };
out.println(intArray.getClass().hashCode());
int[] int2Array = { 1, 2 };
out.println(int2Array.getClass().hashCode());
out.println(intArray.equals(int2Array));
tôi nhận được đầu ra dưới đây
1641745
1641745
false
Tôi tự hỏi tại sao các bằng đang trở lại sai mặc dù cả hai mảng là của int
loại và có cùng kích thước.
Ngoài ra còn có các phương pháp Arrays.deepEquals nếu bạn cần chúng. –