天天看點

java 數組 equals_java中用equals比較兩個内容相同的字元數組

********************************************

你在數組上調用函數equals,比較的是c和ch的位址

改成

if(Arrays.equals(ch,c));

就可以比較c和ch的内容了

********************************************

java.sun.com上說,

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

It doesn't perform an intelligent comparison for most classes unless the class overrides it. It has been defined in a meaningful way for most Java core classes. If it's not defined for a (user) class, it behaves the same as ==.

"If it's not defined for a (user) class, it behaves the same as =="由于你沒有重寫equals方法,是以它比較的是數組的位址,相當于是==。

另外,有問題可以去sun.java.com上找每個class的說明,也可以裝個Netbeans java版(開源的),Netbeans 直接提供每個方法的說明

望采納