日期:2014-05-20  浏览次数:20737 次

为什么equals数组没有成立
import java.util.*;

public class Test2
{
public static void main(String[] args)
{
int []a = {1, 2, 3};
int []b = {1, 2, 3};

    Boolean x;
   x = equals(int[]a, int[]b);//书上写的是static Boolean equals(type[]a, type[]b),
                      //我的写法应该也没错呀?为什么得不到正确的结果
  System.out.println(x);

        String n = "abc";
        String m = "opq";
          
        Boolean y;
        y = n.equals(m);
        System.out.println(y);

}
}


单独比较数组运行不通过,单独运行字符串可以得到结果,为什么,比较数组的函数写错了吗?

------解决方案--------------------
API中equals中 只有一个参数
public boolean equals(Object anObject)


你这有两个参数了 肯定得有自己写的一个两个参数的equals方法重载了
public booleanequals(Object obj1,Objectobj2)

------解决方案--------------------
空格忘记了 
重载方法
public boolean equals(Object obj1,Object obj2)

------解决方案--------------------
import java.util.*;

public class Test2
{
        public static void main(String[] args)
        {
              int []a = {1, 2, 3};
              int []b = {1, 2, 3};
                 
        Boolean x;
        x =  Arrays.equals(a,b); //数组的比较
        
        System.out.println(x);
       
        String n = "abc";
        String m = "opq";
           
        Boolean y;
        y = n.equals(m);
        System.out.println(y);
                 
        }    
}