java中==和equals的区别
来源:互联网 发布:淘宝达人直播申请 编辑:程序博客网 时间:2024/04/26 08:17
public class Number {public static void main(String[] args) {Integer a=new Integer(127);Integer b=new Integer(127);System.out.println(a==b);System.out.println(a.equals(b));Integer x=127;Integer y=127;System.out.println(x==y);System.out.println(x.equals(y));Integer c=128;Integer d=128;System.out.println(b==d);System.out.println(c.equals(d));}}
结果是:
false
true
true
true
false
true
通过以上代码及输出结果,先总结如下:
1、以上代码第一段和第二段旨在说明:在-128~127的Integer值并且以Integer x = value;的方式赋值的Integer值在进行==和equals比较时,都会返回true,因为Java里面对处在在-128~127之间的Integer值,用的是原生数据类型byte,会在内存里供重用,也就是说这之间的Integer值进行==比较时只是进行byte原生数据类型的数值比较,而超出-128~127的范围,进行==比较时是进行地址及数值比较。
1、以上代码第一段和第二段旨在说明:在-128~127的Integer值并且以Integer x = value;的方式赋值的Integer值在进行==和equals比较时,都会返回true,因为Java里面对处在在-128~127之间的Integer值,用的是原生数据类型byte,会在内存里供重用,也就是说这之间的Integer值进行==比较时只是进行byte原生数据类型的数值比较,而超出-128~127的范围,进行==比较时是进行地址及数值比较。
阅读全文
0 1
- Java中==和equals的区别,equals和hashCode的区别
- Java中==和equals的区别,equals和hashCode的区别
- Java 中==和 equals 的区别, equals 和 hashCode 的区别
- Java中==和equals的区别,equals和hashCode的区别
- Java语法----Java中equals和==的区别
- Java语法----Java中equals和==的区别
- Java语法----Java中equals和==的区别
- Java语法----Java中equals和==的区别
- Java 中 equals 和 == 的区别和联系
- Java中==和equals的区别和联系
- java中字符串的equals和==的区别
- java中 ==和 equals区别
- java中"==" 和 equals区别
- Java中equals和==区别
- Java 中equals和==区别
- java中==和equals区别
- Java中equals和== 区别
- Java中"=="和"equals"区别
- APP导航使用短视频来播放
- iOS
- 高并发网络编程之epoll详解
- win10 安全模式开机
- java 标签中图片加载不完全问题
- java中==和equals的区别
- 文件操作-打开、读写
- Android串口通信:串口读写实例
- 理解RecyclerView的RecyclerView.ItemDecoration(二)
- 一起艳恶学习开发遇到的坑(一)
- 仿淘宝一键置顶的判断及其详细实现
- ajax跨域问题以及解决方案
- java集合框架之Vector
- 5-4 List Leaves