java中equals和==的区别?
Inttegera=1;Inttegerb=1;intx=2;inty=2;System.out.println(a==b);//fSystem.out.println(...
Intteger a = 1;
Intteger b = 1;
int x = 2;
int y = 2;
System.out.println(a==b);//f
System.out.println(x==y);//t
System.out.println(a.equals (b));//t
为什么Intteger ==就是f,用equals就是t?
帮忙解释一下,谢谢 展开
Intteger b = 1;
int x = 2;
int y = 2;
System.out.println(a==b);//f
System.out.println(x==y);//t
System.out.println(a.equals (b));//t
为什么Intteger ==就是f,用equals就是t?
帮忙解释一下,谢谢 展开
展开全部
不对吧,System.out.println(a==b);这条语句怎么是false呢,它应该是true才对啊。我还亲自测试了下。
java中的数据类型,可分为两类:
1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean
他们之间的比较,应用双等号(==),比较的是他们的值。
2.复合数据类型(类)
当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。
建议LZ看下以下这个连接的内容,很能说明问题:
http://www.cnblogs.com/zhxhdean/archive/2011/03/25/1995431.html
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询