java中基本数据类型、包装类及字符串之间的相互转换
2024-09-07 19:41:37
基本数据类型:不支持面向对象的编程机制(没有属性和方法),即不支持面向对象,之所以提供8中基本数据类型,是为了方便常规数据的处理。
包装类:通过包装类可以将基本数据类型的值包装为引用数据类型的对象,使其具有面向对象的特征。
下面是8中基本数据类型及其对应的包装类:
基本类型 | 包装类 |
byte | Byte |
char | Character |
int | Integer |
short | Short |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
除了Integer和Character类外,其他对应的包装类的名称都与其基本数据类型一样,只不过首字母大写。
基本数据类型和字符串转换为包装类的方法:
public class TestDemo01 { public static void main(String[] args) {
//首先定义两个变量
int num = 20;
String str = "998";
//1.自动装箱可以将基本类型转换为包装类
Integer i = num;
System.out.println("通过自动装箱的方法将int变量转换为包装类的结果:"+i);
//2.通过包装类的valueOf()静态方法将基本类型和字符串转换为包装类
Integer i1 = Integer.valueOf(num);
Integer i2 = Integer.valueOf(str);
System.out.println("将int变量转换为包装类的结果:"+i1);
System.out.println("将字符串变量转换为包装类的结果:"+i2);
//3.通过包装类的有参构造方法将基本类型和字符串转换为包装类
Integer i3 = new Integer(num);
Integer i4 = new Integer(str);
System.out.println("通过构造器将int变量转换为包装类的结果:"+i3);
System.out.println("通过构造器将字符串变量转换为包装类的结果:"+i4); } }
基本类型转换为字符串的方法:
public class TestDemo02 { public static void main(String[] args) {
//首先定义变量
int i = 20;
//1.通过String.valueOf()方法将基本类型转换为字符串
String str = String.valueOf(i);
System.out.println("将基本类型转换为字符串的结果:"+str);
//2.通过包装类的toString()方法将包装类转换为字符串
String str1 = Integer.toString(i);
System.out.println(str1);
//3.用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串
String str2 = i+"";
System.out.println(str2);
} }
字符串转换成基本类型的方法:
public class TestDemo03 { public static void main(String[] args) {
String str = "998";
//1.通过包装类的parseXxx()静态方法将字符串转换为基本数据类型
int parseInt = Integer.parseInt(str);
System.out.println(parseInt);
//调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱
int i = Integer.valueOf(str);
System.out.println(i);
} }
包装类转换为基本数据类型和字符串的方法:
public class TestDemo04 { public static void main(String[] args) {
int a = 20;
String str = "998";
//先将它们转换为包装类
Integer b = a;
Integer integer = Integer.valueOf(str);
//1.自动拆箱,将包装类转换为基本数据类型 int c = b;
System.out.println(c);
//2.通过包装类的toString()方法将包装类转换为字符串
String str1 = Integer.toString(integer); } }
注意:除了Character外,包装类都有valueOf(String s)和parseXxx(String s)方法,其中参数 s 不能为null,而且字符串必须是可以解析为对应基本类型的数据,
否则编译通过,当运行会报错。
public class TestDemo05 { public static void main(String[] args) {
Integer i = Integer.valueOf("123");//合法
Integer i1 = Integer.valueOf("12a");//不合法
int a = Integer.parseInt("123");//合法
Integer in = Integer.parseInt("itcast");//不合法
} }
最新文章
- 理解Java虚拟机体系结构
- Java——列表框:JList
- VMware安装Linux第一天
- Memcache笔记04-Memcached机制深入了解
- 设置Sql Agent运行Job时的执行账户
- noip2012普及组——质因数分解
- SOA_环境安装系列1_Oracle SOA Suite11g安装总括(案例)
- POJ 1922 Ride to School(贪心+模拟)
- 【转】404、500、502等HTTP状态码介绍
- ios实现截屏(转)
- CodePage------Encoding 类支持的编码以及与这些编码关联的代码页(CodePage)
- vim删除^M
- js设置全局变量ajax中赋值
- HDFS概述(3)————HDFS Federation
- GIt -- fatal: refusing to merge unrelated histories 问题处理
- vue/iview使用moment.js
- 通过SQLServer的数据库邮件来发送邮件
- php循环删除checkbox
- 使用ajax请求后端程序时,关于目标程序路径问题
- Json序列化提示缺少编译器要求的成员“ystem.Runtime.CompilerServices.ExtensionAttribute..ctor”