如何在Java 9的JShell中创建包装器对象?
Java中的每个基本类型都有一个对应的内置包装器类,这些包装器类也是不可变的。Integer、Float、Double、Byte等等都是一些内置的包装器类。在代码中使用这些包装器的主要原因是访问对应基本类型的类型信息、自动装箱功能(其中基本数据类型会自动提升为对象引用类型)以及在数据结构中移动基本数据类型数据。
我们可以使用new运算符创建包装器类的实例,也可以使用诸如Integer之类的类型中的valueOf()方法来创建包装器对象。Integer.valueOf()方法将重用堆中具有相同值的现有Integer对象。如果堆中存在具有相同值的现有对象,则它将返回对现有对象的引用;否则,返回新创建的Integer对象的引用。
在下面的代码片段中,我们可以使用JShell工具创建包装器对象。
代码片段1
jshell> Integer int1 = new Integer(10); int1 ==> 10 jshell> Integer int2 = new Integer(10); int2 ==> 10 jshell> Integer int3 = Integer.valueOf(10); int3 ==> 10 jshell> Integer int4 = Integer.valueOf(10); int4 ==> 10 jshell> int1 == int2; $7 ==> true jshell> int3 == int4; $8 ==> true
代码片段2
jshell> Integer abc1 = Integer.valueOf(700); abc1 ==> 700 jshell> Integer abc2 = 700; abc2 ==> 700 jshell> Integer abc3 = 700; abc3 ==> 700 jshell> abc2 == abc3 $4 ==> false jshell> Integer.MAX_VALUE $5 ==> 2147483647 jshell> Integer.MIN_VALUE $6 ==> -2147483648 jshell> Integer.SIZE $7 ==> 32 jshell> Integer.BYTES $8 ==> 4
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP