0127 基本类型包装类

要实现用户输入的内容从字符串向基本数据类型的转换,java提供了基本数据类型的包装类,将基本数据类型的值封装成了对象

八种基本数据类型的包装类对应如下

 

1、字符串转为基本数据类型的方法:

parseByte(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为byte类型

parseShort(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为short类型

parseInteger(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为int类型 

parseLong(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为long类型

parseCharacter(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为char类型

parseBloon(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为bloon类型

parseFloat(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为float类型

parseDouble(String s);这是个静态成员方法,可以通过类名直接调用该方法,将string类型的s转为double类型

例:这里以int类型举例

int i=Interger.parseInterger(“100”);

System.out.println(i+1);

运行结果为101

2、将基本数据类型转为字符串

(1)可以直接拼接一个双引号

String s=123+"";

System.out.println(s+1);

运行结果为1231;

(2)valuesOf();方法

valueOf(Boolean i);这是个静态成员方法,可以直接通过类名直接调用,将Boolean类型的i转为一个字符串

valueOf(int i);这是个静态成员方法,可以直接通过类名直接调用,将int类型的i转为一个字符串

valueOf(char i);这是个静态成员方法,可以直接通过类名直接调用,将char类型的i转为一个字符串

valueOf(float i);这是个静态成员方法,可以直接通过类名直接调用,将float类型的i转为一个字符串

valueOf(double i);这是个静态成员方法,可以直接通过类名直接调用,将double类型的i转为一个字符串

valueOf(long i);这是个静态成员方法,可以直接通过类名直接调用,将long类型的i转为一个字符串

valueOf(object i);这是个静态成员方法,可以直接通过类名直接调用

例:这里以int类型举例

int i=100;

String s=Integer.valuesOf(i);

Systen.out.println(s+1);

运行结果为1001;

(3)调用包装类中的toString()方法

toString(Boolean i);这是个静态成员方法,可以直接通过类名直接调用,将Boolean类型的i转为一个字符串

toString(int i);这是个静态成员方法,可以直接通过类名直接调用,将int类型的i转为一个字符串

toString(char i);这是个静态成员方法,可以直接通过类名直接调用,将char类型的i转为一个字符串

toString(float i);这是个静态成员方法,可以直接通过类名直接调用,将float类型的i转为一个字符串

toString(double i);这是个静态成员方法,可以直接通过类名直接调用,将double类型的i转为一个字符串

toString(long i);这是个静态成员方法,可以直接通过类名直接调用,将long类型的i转为一个字符串

toString(byte i);这是个静态成员方法,可以直接通过类名直接调用,将byte类型的i转为一个字符串

toString(short i);这是个静态成员方法,可以直接通过类名直接调用,将short类型的i转为一个字符串

例:这里以double类型举例

double i=100.6;

String s=Double.toString(i);

System.out.println(s+1);

运行结果为100.61;

3、基本类型与包装类之间的转换

使用int类型与Integer对象转换进行演示,其他基本类型转换方式相同

(1)基本对象->包装类对象

(1-1)构造方法

Interger(int i)将一个int类型的i转为Interger包装类对象

Interger(String i)将一个String类型的i转为Interger包装类对象

例:

Integer in=new Integer(123);
Integer in1=new Integer("456");

同理 其他类型也是一样 Double d=new Double(100.6);

(1-2)成员方法

valuesOf(int i)被静态修饰的静态成员方法,将int类型的i转为integer包装类对象

例:

Integer in2=Integer.valueOf(123);
Integer in3=Integer.valueOf("456");

(2)包装类对象->基本对象

intValue()方法 返回值是一个int类型

例:

int i2=in.intValue();
System.out.println(i2+1);(in是上边创建的那个包装类对象)

运行结果为124

4、自动装箱和自动拆箱

Interger i=123;

当我们这样写,java就自动创建了一个Interger包装类对象i并将123赋值他

实际上java偷偷走了Integer i=new Integer(123);这一段代码,这叫自动装箱

int i2=i+2;输出打印i2的结果为125

当我们这样写,java自动将i转成了基本数据类型,实际走的是int i2=i.intValue()+2;这叫自动拆箱

 5、

Integer i=127;//数值在byte范围内 进的是byte常量池如果是127以上的就不会
Integer i2=127;
System.out.println(i==i2);
System.out.println(i.equals(i2));

运行结果为

true

true

Integer i=128;//数值在byte范围内 进的是byte常量池如果是127以上的就不会
Integer i2=128;
System.out.println(i==i2);
System.out.println(i.equals(i2));

运行结果

false

true

posted @ 2021-01-27 16:42  公雪  阅读(158)  评论(0编辑  收藏  举报