byte 类型比较_基本类型和包装类对象使用 == 和 equals进行比较的结果?
1、值不同,使用==和equals比较都返回false
2、值相同,使用==比较:基本类型-基本类型、基本类型-包装对象返回true
包装对象-包装对象返回false
缓存中去的包装对象比较返回true(原因是jdk缓存部分常见的Integer对象)
Integer i1 = 100;
Integer i2 = 100;
Integer i3 = 200;
Integer i4 = 200;
System.out.println(i1==i2); //打印true
System.out.println(i3==i4); //打印false
使用equals比较:包装对象-基本类型返回true
包装对象-包装对象返回false
JDK1.8,实验代码
byte b1 = 127;
Byte b2 = new Byte("127");
Byte b3 = new Byte("127");
System.out.println("Byte 基本类型和包装对象使用 == 比较 : " + (b1 == b2));
System.out.println("Byte 基本类型和包装对象使用 equals 比较 : " + b2.equals(b1));
System.out.println("Byte 包装对象和包装对象使用 == 比较 : " + (b2 == b3));
System.out.println("Byte 包装对象和包装对象使用 equals 比较 : " + b2.equals(b3));
System.out.println();
short s1 = 12;
Short s2 = new Short("12");
Short s3 = new Short("12");
System.out.println("Short 基本类型和包装对象使用 == 比较 : " + (s1 == s2));
System.out.println("Short 基本类型和包装对象使用 equals 比较 : " + s2.equals(s1));
System.out.println("Short 包装对象和包装对象使用 == 比较 : " + (s2 == s3));
System.out.println("Short 包装对象和包装对象使用 equals 比较 : " + s2.equals(s3));
System.out.println();
char c1 = 'A';
Character c2 = new Character('A');
Character c3 = new Character('A');
System.out.println("Character 基本类型和包装对象使用 == 比较 : " + (c1 == c2));
System.out.println("Character 基本类型和包装对象使用 equals 比较 : " + c2.equals(c1));
System.out.println("Character 包装对象和包装对象使用 == 比较 : " + (c2 == c3));
System.out.println("Character 包装对象和包装对象使用 equals 比较 : " + c2.equals(c3));
System.out.println();
int i1 = 10000;
Integer i2 = new Integer(10000);
Integer i3 = new Integer(10000);
System.out.println("Integer 基本类型和包装对象使用 == 比较 : " + (i1 == i2));
System.out.println("Integer 基本类型和包装对象使用 equals 比较 : " + i2.equals(i1));
System.out.println("Integer 包装对象和包装对象使用 == 比较 : " + (i2 == i3));
System.out.println("Integer 包装对象和包装对象使用 equals 比较 : " + i2.equals(i3));
System.out.println();
long l1 = 1000000000000000L;
Long l2 = new Long("1000000000000000");
Long l3 = new Long("1000000000000000");
System.out.println("Long 基本类型和包装对象使用 == 比较 : " + (l1 == l2));
System.out.println("Long 基本类型和包装对象使用 equals 比较 : " + l2.equals(l1));
System.out.println("Long 包装对象和包装对象使用 == 比较 : " + (l2 == l3));
System.out.println("Long 包装对象和包装对象使用 equals 比较 : " + l2.equals(l3));
System.out.println();
float f1 = 10000.111F;
Float f2 = new Float("10000.111");
Float f3 = new Float("10000.111");
System.out.println("Float 基本类型和包装对象使用 == 比较 : " + (f1 == f2));
System.out.println("Float 基本类型和包装对象使用 equals 比较 : " + f2.equals(f1));
System.out.println("Float 包装对象和包装对象使用 == 比较 : " + (f2 == f3));
System.out.println("Float 包装对象和包装对象使用 equals 比较 : " + f2.equals(f3));
System.out.println();
double d1 = 10000.111;
Double d2 = new Double("10000.111");
Double d3 = new Double("10000.111");
System.out.println("Double 基本类型和包装对象使用 == 比较 : " + (d1 == d2));
System.out.println("Double 基本类型和包装对象使用 equals 比较 : " + d2.equals(d1));
System.out.println("Double 包装对象和包装对象使用 == 比较 : " + (d2 == d3));
System.out.println("Double 包装对象和包装对象使用 equals 比较 : " + d2.equals(d3));
System.out.println();
boolean bl1 = true;
Boolean bl2 = new Boolean("true");
Boolean bl3 = new Boolean("true");
System.out.println("Boolean 基本类型和包装对象使用 == 比较 : " + (bl1 == bl2));
System.out.println("Boolean 基本类型和包装对象使用 equals 比较 : " + bl2.equals(bl1));
System.out.println("Boolean 包装对象和包装对象使用 == 比较 : " + (bl2 == bl3));
System.out.println("Boolean 包装对象和包装对象使用 equals 比较 : " + bl2.equals(bl3));
运行结果
Byte 基本类型和包装对象使用 == 比较 : true
Byte 基本类型和包装对象使用 equals 比较 : true
Byte 包装对象和包装对象使用 == 比较 : false
Byte 包装对象和包装对象使用 equals 比较 : true
Short 基本类型和包装对象使用 == 比较 : true
Short 基本类型和包装对象使用 equals 比较 : true
Short 包装对象和包装对象使用 == 比较 : false
Short 包装对象和包装对象使用 equals 比较 : true
Character 基本类型和包装对象使用 == 比较 : true
Character 基本类型和包装对象使用 equals 比较 : true
Character 包装对象和包装对象使用 == 比较 : false
Character 包装对象和包装对象使用 equals 比较 : true
Integer 基本类型和包装对象使用 == 比较 : true
Integer 基本类型和包装对象使用 equals 比较 : true
Integer 包装对象和包装对象使用 == 比较 : false
Integer 包装对象和包装对象使用 equals 比较 : true
Long 基本类型和包装对象使用 == 比较 : true
Long 基本类型和包装对象使用 equals 比较 : true
Long 包装对象和包装对象使用 == 比较 : false
Long 包装对象和包装对象使用 equals 比较 : true
Float 基本类型和包装对象使用 == 比较 : true
Float 基本类型和包装对象使用 equals 比较 : true
Float 包装对象和包装对象使用 == 比较 : false
Float 包装对象和包装对象使用 equals 比较 : true
Double 基本类型和包装对象使用 == 比较 : true
Double 基本类型和包装对象使用 equals 比较 : true
Double 包装对象和包装对象使用 == 比较 : false
Double 包装对象和包装对象使用 equals 比较 : true
Boolean 基本类型和包装对象使用 == 比较 : true
Boolean 基本类型和包装对象使用 equals 比较 : true
Boolean 包装对象和包装对象使用 == 比较 : false
Boolean 包装对象和包装对象使用 equals 比较 : true
ps:可以延伸一个问题,基本类型与包装对象的拆/装箱的过程
![](/assets/blank.gif)
byte 类型比较_基本类型和包装类对象使用 == 和 equals进行比较的结果?相关推荐
- Java面试题 基本类型和包装类对象使用 == 和 equals进行比较的结果?
Java面试题 (基础 与 语法) 基本类型 和 包装类 对象使用 == 和 equals 进行比较的结果? 1.值不同,使用 == 和 equals() 比较都返回 false 2.值相同 使用 = ...
- 基本类型和包装类对象使用 == 和 equals进行比较的结果?
基本类型的包装类对象使用 == 和 equals进行比较的结果 1.值不同,使用==和equals比较都返回false 2.值相同 使用==比较: 基本类型-基本类型.基本类型-包装对象返回true ...
- java 基本类型 包装类型_Java中基本类型和包装类
基本类型运算 boolean类型数据可以进行逻辑运算(&&,||,!),其他的基本类型都可以进行数值计算(+,-,*,/).逻辑运算比较简单易懂,完全与逻辑数学的规则一致,而数值运算涉 ...
- java包装类和基本类型谁先谁后_你知道Java中基本类型和包装类的区别吗
前情提要 上一篇中,通过一道常见的面试题(即:String.StringBuilder.StringBuffer的区别),引申到Java中基本类型和包装类的相关内容.在这一篇中,我们将解决上一篇中引申 ...
- java包装类和基本类型_你知道Java中基本类型和包装类的区别吗
前情提要 上一篇中,通过一道常见的面试题(即:String.StringBuilder.StringBuffer的区别),引申到Java中基本类型和包装类的相关内容.在这一篇中,我们将解决上一篇中引申 ...
- java5引入包装类型的意义_Java中的基本类型和包装类
Java中基本数据类型与包装类型有 基本类型 包装器类型 boolean Boolean char Character int Integer byte Byte short Short long L ...
- 对象在内存中的存储基本类型和包装类java类型转换
对象在内存中的存储 对象头.实例数据和填充数据(为了对齐) 实例变量:存放类的属性数据信息,包括父类的属性信息,如果是数组的实例部分还包括数组的长度,这部分内存按4字节对齐. 填充数据:由于虚拟机要求 ...
- java包装器类_Java中的基本类型和包装类
Java中基本数据类型与包装类型有 基本类型 包装器类型 boolean Boolean char Character int Integer byte Byte short Short long L ...
- Java基础——基本类型和包装类、基本类型和字符串之间的转换
基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更 ...
最新文章
- [转]oracle 存储过程的基本语法 及注意事项
- 如何理解IIS 7的两种应用程序池的管道模式(Managed Pipeline Mode)
- poj3279 Fliptile
- junit4 的使用 顺便理解ClassPathXmlApplicationContext的使用
- Spring Boot Spring MVC 异常处理的N种方法 1
- Python数据清洗基本流程
- Laravel框架性能优化
- 弱小无助!苹果或将出手救援屏幕供应商JDI
- request.getParameterValues与request.getParameter的区别
- 让Python删除window下文件
- 【剑指 offer】(十)—— 二进制形式 1 的个数
- 如何在 SVG 和 Canvas 之间进行选择
- 恒大人寿保险搭载EastFax USB SERVER推动U盾管理革新
- vCenter资源池
- springboot内存占用过高问题排查 - jvm内存使用分析
- PHP资源汇总,内容包括:库、框架、模板等
- 前端问题记录(持续更新...)
- 【CDN加速】项目前端性能优化之开启CDN加速
- 计算机网络手写笔记图片,一键收藏!清华学子这样记笔记!
- 我的游戏学习日志3——三国志GBA
热门文章
- php上传图片显示在当前页,PHP上传图片到数据库并显示
- Kotlin学习笔记 第二章 类与对象 第九节 泛型
- ora-28500 ora-02063 mysql_oracle dblink mysql 报错ORA-28500
- 2020年7月4日 随机过程大作业
- Fibonacci数列整除性质的组合证明
- linux下jupyter notebook路径不对的解决方法
- 教师计算机提升学到的知识,教师计算机教学工作总结(精选6篇)
- 公共端接正极还是负极_被称为下一代动力电池的固态电池,到底明年还是十年后才能量产?...
- android view setleft,android – 在新textview上使用setLeft / setRight方法
- php表格位于页面中央,怎么为表格所在的页面添加编辑限制保护