码迷,mamicode.com
首页 > 其他好文 > 详细

40 包装类

时间:2021-04-07 10:35:55      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:contain   intvalue   system   -128   测试题   包装类   abc   tor   lock   

包装类

  1. java提供了8中基本数据类型的包装类,是的基本数据类的变量具有类的特征

  2. 基本数据类型、包装类、String三者之间的转换

基本数据类型 包装类

byte Byte

short Short

int Interger

long Long

float Float

double Double

boolean Boolean

char Character

 

基本数据类型与包装类和String之间的转换

基本数据类型 -----> 包装类

        int num1 = 10;
       Integer integer = new Integer(num1);
       System.out.println(integer.toString());
?
       Integer integer1 = new Integer("123");
       System.out.println(integer1.toString());
?
       Integer integer1 = new Integer("123abc");
       System.out.println(integer1.toString());//报错

 

包装类 ------> 基本数据类型 调用xxxValue()

        Integer in1 = new Integer(12);
       int i = in1.intValue();
       
       Float f1 = new Float(12.3);
       float f2 = f1.floatValue();  

 

自动装箱

基本数据类型 -----> 包装类

int num2 = 10;
Integer in2 = num2;

 

自动拆箱

包装类 ------> 基本数据类型

int num3 = in2;

 

基本数据类型、包装类 -----> String类 调用String的valueOf()

 //方式一 int num1 = 10; 
String str1 = num1 + "";
//方式二:调用String的valueOf()
float f1 = 12.3f;
String str2 = String.valueOf(f1);

 

String类 ------> 基本数据类型、包装类 调用包装类的parseXxx()

可能会报NumberFormatException

String str1 = "123";
int i = Integer.parseInt(str1);

 

测试题

Integer i = new Integer(1);
Integer j = new Integer(1);
System.out.print1n(i == j);//false 比较的地址
?
//Integer内部定义了IntegerCache结构,工ntegerCache中定义了Integer[],
//保存了从-128~127范围的整数。如果我们使用自动装箱的方式,给Integer赋值的范围在
//-128~127范围内时,可以直接使用数组中的元素,不用再去new了。目的:提高效率
Integer m = 1;
Integer n = 1;
system.out.print1n(m == n); //true
?
Integer x = 128;//相当于new了一个Integer对象
Integer y = 128;
System.out.print1n(x ==y );//false
?

 

 

40 包装类

标签:contain   intvalue   system   -128   测试题   包装类   abc   tor   lock   

原文地址:https://www.cnblogs.com/flypigggg/p/14618433.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!