java 问题!!应该输出true ,为啥 是false!!求大神

2025-05-12 13:16:37
推荐回答(3个)
回答(1):

System.out.println(a.equals(b)); 

你这行代码的问题 根本就没有调用下面的方法

equals()方法是java定义好了的方法 是比较值是否相同  并不是你下面自己定义的   java本身就定义了equals()方法   

你把下面的方法重新命名 再重新调用



public class Text {

public static void main(String[] args) {

int[] a = { 1, 2, 3 };

int[] b = { 1, 2, 3 };

System.out.println(a.equals(b));

System.out.println(XX(a,b));

}


private static boolean  XX(int[] x, int[] y) {

int n = x.length;

if (y.length != n) {

System.out.println("-11111111111");

return false;

}

for (int i = 0; i < n; i++) {

if (x[i] != y[i]) {

System.out.println("-22222221");

return false;

}

}

return true;

}

}

回答(2):

System.out.println (equals (a, b));

回答(3):

你这个用的不是自己写的方法啊,库里面有的equals