本文介紹了為什么這兩個數組不相等?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
public static void main(String[] args)
{
char [] d = {'a','b','c','d'};
char [] e = {'d','c','b','a'};
Arrays.sort(d);
Arrays.sort(e);
System.out.println(e); //console : abcd
System.out.println(d); //console : abcd
System.out.println(d.equals(e)); //console : false
}
為什么數組不相等?我可能錯過了什么,但這讓我抓狂。結果不是應該是真的嗎?是的,我已經導入了java.util.Array。
推薦答案
結果不應該是真的嗎?
不。您正在對兩個不同的數組引用調用equals。數組不覆蓋equals,因此您可以獲得引用相等。引用不相等,因此返回FALSE…
若要比較數組中的值,請使用Arrays.equals(char[], char[])。
System.out.println(Arrays.equals(d, e));
這篇關于為什么這兩個數組不相等?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,






