Java包装类(Wrapper)、基本数据类型、String类之间的转换
2016-08-01 17:23
639 查看
一、基本数据类型和包装类之间的转化
1、基本数据类型 to 包装类
public void test1() { //1.通过构造器,构造器参数加上双引号也可以,但双引号内容要与对应包装类类型一致 Integer i1 = new Integer(12);//i1 = 12 Integer i2 = new Integer("12");//i2 = 12 //Integer i2 = new Integer("12adfa");//报错 Float f1 = new Float("12.3F");//i3 = 12.3 //Float f1 = new Float("12.3abc");//报错 System.out.println("i1=" + i1 + " i2=" + i2 + " f1=" + f1); //特殊对于Boolean,当参数是"ture"返回true,其他返回false Boolean b1 = new Boolean("abc");//b1 = false Boolean b2 = new Boolean("true");//b2 = true System.out.println("b1=" + b1 + " b2=" + b2); //但不加双引号时,只能写false或true,其他会报错 //Boolean b3 = new Boolean(abc);//报错 Boolean b3 = new Boolean(false);//b3 = false Boolean b4 = new Boolean(true);//b4 = true System.out.println("b3=" + b3 + " b4=" + b4); //包装类默认值是null Order o = new Order(); //2.通过valueOf方法,传递参数可以是字符串也可以是对应类型数据 Integer i3 = Integer.valueOf(30);//i3 = 30 //3.自动包装的方法,详见Test3() System.out.println("\no.i1=" + o.i1 + " o.i2=" + o.i2 + "\no.d1=" + o.d1 + " o.d2=" + o.d2 + "\no.b1=" + o.b1 + " o.b2=" + o.b2 + "\ni3=" + i3); } class Order { int i1;//i1 = 0 Integer i2;//i2 = null double d1;//d1 = 0.0 Double d2;//d2 = null boolean b1;//b1 = false Boolean b2;//b2 = null }
运行结果:
变量 | 变量值 |
---|---|
i1 | 12 |
i2 | 12 |
f1 | 12.3 |
b1 | false |
b3 | false |
b4 | true |
o.i1 | 0 |
o.i2 | null |
o.d1 | 0.0 |
o.d2 | null |
i3 | 30 |
2、包装类 to 基本数据类型
public void test2() { Integer i1 = new Integer(14); Float f1 = new Float(12.3F); //1.调用包装类的XxxValue()方法 int i2 = i1.intValue();//i2 = 14 float f2 = f1.floatValue();//f2 = 12.3 //2.通过自动拆包,详见Test3() System.out.println("i2=" + i2 + " f2=" + f2); }
运行结果:
变量 | 变量值 |
---|---|
i2 | 14 |
f2 | 12.3 |
3、自动装箱拆箱
public void test3() { Boolean b1 = false; //1.自动装箱 Integer i1 = 15;//i4 = 15 //Boolean b1 = "ada";//报错 //Integer i1 = "15";//报错 //2.自动拆箱 int i2 = i1;//i2 = 15 System.out.println("i1=" + i1.intValue() + " b1=" + b1.booleanValue() + " i2=" + i2); }
运行结果:
变量 | 变量值 |
---|---|
i1 | 15 |
b1 | false |
i2 | 15 |
二、基本数据类型、包装类与String类之间的转化
1、基本数据类型、包装类 to String类
public void test4() { int i1 = 2; Boolean b1 = true; //1.基本数据类型 + "" String s1 = i1 + "";//s1="2" //2.调用String类的静态的重载的valueOf()方法(从目标类里找方法) String s2 = String.valueOf(i1);//s2 = "2" String s3 = String.valueOf(b1);//s3 = "true" System.out.println("s1=" + s1 + " s2=" + s2 + " s3=" + s3); }
运行结果:
变量 | 变量值 |
---|---|
s1 | 2 |
s2 | 2 |
s3 | true |
2、String类 to 基本数据类型、包装类
public void test5() { String str1 = "12"; String str2 = "true"; //调用目标包装类的parseXxx(String str)方法或者valueof()方法 (同上,从目标类里找方法) int i1 = Integer.parseInt(str1);//i1 = 12 int i2 = Integer.valueOf(str1);//i2 = 12 boolean b1 = Boolean.parseBoolean(str2);//b1 = true System.out.println("i1=" + i1 + " b1=" + b1 + " i2=" + i2); }
运行结果:
变量 | 变量值 |
---|---|
i1 | 12 |
b1 | true |
i2 | 12 |
三、parseXxx()和valueOf(),toString()的区别
1、parseXxx( ):比如说parseInt( )就是把String类型转化为int类型如:
String a= "123"; int b = Integer.parseInt(a);
这样b就等于123了
2、ValueOf( ):比如说 Integer.valueOf( ) 是把String类型 或者 int类型 转化为Integer类型 ( 注意:是Integer类型,而不是int类型 )
如:
Integer c =Integer.valueOf("123"); Integer d =Integer.valueOf(15);
这时候c = 123、d = 15
3、toString( )可以把一个引用类型转化为String字符串类型
Integer a = new Integer(123); String b =a.toString();
这时候b就是 “123” 了
如有错误,欢迎指正
相关文章推荐
- Java基本数据类型、包装类与String类之间的转换
- Java基本数据类型、包装类与String类之间的转换
- Java基本数据类型、包装类与String类之间的转换
- java-包装类、基本数据类型和字符串之间的转换
- java 基本数据类型、包装类、字符串、数组之间的类型转换
- Java的包装类,基本数据类型和String类之间的转化
- Java的基本数据类型:8种基本类型、对应的包装类、引用数据类型及与String 之间的转换。
- java基本数据类型与包装类之间的转换
- java语言基础(59)——jdk5自动装箱和拆箱(基本数据类型与包装类之间的转换)
- 包装类、基本数据类型及String类之间的相互转换
- java基础类型数据与String类包装类之间的转换与理解
- 基本数据类型 、包装类 与String类之间的转换
- java基本数据类型之间的转换
- java基础之基本数据类型及之间的转换
- Java基本数据类型及之间的转换
- Java基础_String类和基本数据类型对象包装类
- java中基本数据类型介绍及其之间的转换
- 【JAVA学习】java基本数据类型与字符串之间的转换(基本数据类型、对象封装类、自动装箱、自动拆箱)
- JAVA基本数据类型与其他语言数据类型之间的转换方法
- 第二章 JAVA语言基本语法————数据类型之间的转换