【常用场景:一些必须使用引用类型的地方】
一、装箱~~拆箱
1.装箱:
自动装箱 (装箱:将基本类型转换成包装类的过程) 在jdk1.5之后提供了自动拆装箱
Byte B = (byte) 1;
(详见代码)。。。
手动装箱
Byte B2 = Byte.valueOf((byte) 1);
。。。
2.拆箱:
手动拆箱 (拆箱:将包装类转换成基本类型的过程)在jdk1.5之后提供了自动拆装箱
byte b = B;
。。。
手动拆箱
byte b2 = B.byteValue();
。。。
【常用场景:基本类型和字符串之间的转换】
二、包装类~String
1.int --> String
方式1 String类中:public static String valueOf(int i)
String str1 = String.valueOf(3);
方式2--利用字符串和其他类型拼接时
String str2 = 3 + "";
方式3--- Integer.toStirng()
String str3 = Integer .toString(3);
【三种方式,其他类型均可】
2.String --> int
Integer类中:public static int parseInt(String s)
byte bFromStr = Byte.parseByte("1"); //通用
int iFromStr = Integer.parseInt("3"); // 警惕: getInteger(String nm) 系统属性,而非字符串
char cFromStr = "a".charAt(0); // 注意 "a".length() //特殊方法
boolean blFromStr = Boolean.parseBoolean("true");// 若转换失败,返回false; 警惕:getBoolean(String name) 系统属性,而非字符串
package com.test;
public class Test01 {
public static void main(String[] args) {
装箱~~拆箱
// 自动装箱 (装箱:将基本类型转换成包装类的过程)
Byte B = (byte) 1;
Short S = (short) 2;
Integer I = 3; // 默认int
Long L = 4L;
Float F = 5.0F;
Double D = 6.0;// 默认double
Character C = '中';
Boolean BL = true;
// 手动装箱
Byte B2 = Byte.valueOf((byte) 1);
Short S2 = Short.valueOf((short) 2);
Integer I2 = Integer.valueOf(3);// 默认int
Long L2 = Long.valueOf(4L);
Float F2 = Float.valueOf(5.0F);
Double D2 = Double.valueOf(6.0);// 默认double
Character C2 = Character.valueOf('中');
Boolean BL2 = Boolean.valueOf(true);
// 自动拆箱 (拆箱:将包装类转换成基本类型的过程)
byte b = B;
short s = S;
int i = I;
long l = L;
float f = F;
double d = D;
char c = C;
boolean bl = BL;
// 手动拆箱
byte b2 = B.byteValue();
short s2 = S.shortValue();
int i2 = I.intValue();
long l2 = L.longValue();
float f2 = F.floatValue();
double d2 = D.doubleValue();
char c2 = C.charValue();
boolean bl2 = BL.booleanValue();
// =================================================================//
各类型~~String
// int --> String
// 方式1 String类中:public static String valueOf(int i)
String str1 = String.valueOf(3);
// byte,short,int,long,float,double,char,boolean 类似
// 方式2--利用字符串和其他类型拼接时
String str2 = 3 + "";
// 方式3--- Integer.toStirng()
String str3 = Integer.toString(3);
// String --> int
// Integer类中:public static int parseInt(String s)
byte bFromStr = Byte.parseByte("1");
short sFromStr = Short.parseShort("2");
int iFromStr = Integer.parseInt("3"); // 警惕: getInteger(String nm) 系统属性,而非字符串
long lFromStr = Long.parseLong("4");
float fFromStr = Float.parseFloat("5");
double dFromStr = Double.parseDouble("6");
char cFromStr = "a".charAt(0); // 注意 "a".length()
boolean blFromStr = Boolean.parseBoolean("true");// 若转换失败,返回false; 警惕:getBoolean(String name) 系统属性,而非字符串
}
}
相关资料:
Java学习笔记(六)--包装类、基本类型、拆箱、装箱
详解Java的自动装箱与拆箱(Autoboxing and unboxing)
【Java】Java的==和equals()以及自动装箱拆箱
欢迎大家交流指正,讨论完善!