java中基本数据类型、包装类及字符串之间的相互转换
基本数据类型:不支持面向对象的编程机制(没有属性和方法),即不支持面向对象,之所以提供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中16进制与字符串之间的相互转换
笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码 经过考虑决定通过以下方式进 ...
- java中数组、集合、字符串之间的转换,以及用加强for循环遍历
java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ...
- JAVA中基础类型和字串类型之间的相互转换
转自:https://www.imooc.com/code/2251 仅做个人学习记录之用,侵删. 在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换. 其中,基本类型转换为字符串有三种方法 ...
- java中XMLGregorianCalendar类型和Date类型之间的相互转换
import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar;import ja ...
- java 基本类型、包装类、字符串之间的转换
1.基本类型和包装类 基本类型和包装类可通过自动装箱和拆箱实现. int i = 24; Integer a = new Integer(i); //手动装箱 Integer b = i; //自动装 ...
- carryLess小笔记001_Java中16进制与字符串之间的相互转换
笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码 经过考虑决定通过以下方式进 ...
- Java中基本数据类型和包装类
参考:深入剖析Java中的装箱和拆箱; Java中基本数据类型和包装类互转中 缓冲机制的使用; java学习笔记:装箱和拆箱,包装器和缓冲池 Java 各 类型数据在内存中分配情况详解 一 java内 ...
- java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;
<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...
- Java开发学习--Java 中基本类型和包装类之间的转换
Java 中基本类型和包装类之间的转换 基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦): 在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之 ...
随机推荐
- Kubernetes使用metric-server让HPA弹性伸缩运行
监控架构概述 kubernetes监控指标大体可以分为两类:核心监控指标和自定义指标,核心监控指标是kubernetes内置稳定可靠监控指标,早期由heapster完成,现由metric-server ...
- Filebeat配置文件解析-转载
转载地址:https://dongbo0737.github.io/2017/06/13/filebeat-config/ Filebeat配置文件解析 filebeat 一个ELK架构中,专门用来收 ...
- [Fundamental of Power Electronics]-PART II-8. 变换器传递函数-8.3 阻抗和传递函数图形的构建
8.3 阻抗和传递函数图形的构建 通常,我们可以通过观察来绘制近似的bode图,这样没有大量混乱的代数和不可避免的有关代数错误.使用这种方法可以对电路运行有较好的了解.在各种频率下哪些元件主导电路的响 ...
- SQL Server如何将查询的内容保存到新的sql 表中
我是采用语句将 查询后的数据保存到一个新表中 1)采用into table 语句,需要保存到的这个新表不需要提前创建 select *into NewTable from Table --插入新表的语 ...
- Github仓库master分支到main分支迁移指南
1 概述 2020年10月1日后,Github会将所有新建的仓库的默认分支从master修改为main,这就导致了一些旧仓库主分支是master,新仓库主分支是main的问题,这在有时候会带来一些麻烦 ...
- Ananagrams UVA - 156
Most crossword puzzle fans are used to anagrams - groups of words with the same letters in differe ...
- Json文件转换为Excel文件!涉及读文件,时间戳转化,写文档
一. 思路 今天接到个小任务,让把json文件转换成excel文件,按照列展开. 思路:既然json已经都已经是现成的,那直接将json文件做读操作,在通过不同的key,找到对应的信息,在存到单元格中 ...
- Arch! 从安装开始
Arch! 从安装开始 事实上Arch的安装Arch Wiki Installation Guide,已经非常详细了 但是初次面对这些东西时肯定非常迷茫,根本不知道这些东西是在干嘛?为什么要这么干? ...
- Android埋点技术概览
注:本文同步发布于微信公众号:stringwu的互联网杂谈Android无埋点技术概览 本文是Android无埋点系列的开篇---埋点技术概览 1 背景 埋点是数据产品经理(分析师)基于业务需求,对用 ...
- 软件篇-01-为Jetson TX2扫清科研的障碍
建议用vryL,GUI界面,功能更全,支持订阅. https://github.com/ShieldQiQi/vryLgithub.com 下面的内容不用看了,除非你更喜欢命令行界面. To r ...