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 引入自动装箱和拆箱的机制后,包装类和基本类型之 ...
随机推荐
- Go 中的 gRPC 入门详解
目录 Go GRPC 入门 1,安装包 2,gRPC 服务端 3,gRPC 客户端 4,编译运行 5,其它 GRPC Protobuf buffer 字段类型 字段规则 Protobuf gRPC 四 ...
- 在ASP.NET Core中用HttpClient(六)——ASP.NET Core中使用HttpClientFactory
到目前为止,我们一直直接使用HttpClient.在每个服务中,我们都创建了一个HttpClient实例和所有必需的配置.这会导致了重复代码.在这篇文章中,我们将学习如何通过使用HttpClient ...
- python之极简ATM系统示例
"""用户可登陆系统输错三次锁定账号用户可以创建新的用户名密码新用户初始账户设为0新用户可直接登陆系统用户登陆成功后可以选择业务类型用户数据可以根据业务修改输入Q随时退出 ...
- Spring笔记(四)
Spring JdbcTemplate 一.JdbcTemplate概念及使用 1. 什么是JdbcTemplate: Spring框架对JDBC进行封装,使用JdbcTemplate方便实现对数据库 ...
- ES系列(二):基于多播的集群发现实现原理解析
ES作用超强悍的搜索引擎,除了需要具有齐全的功能支持,超高的性能,还必须要有任意扩展的能力.一定程度上,它是一个大数据产品.而要做扩展性,集群自然少不了.然而单独的集群又是不够的,能够做的事情太少,所 ...
- 【2w字干货】ArrayList与LinkedList的区别以及JDK11中的底层实现
1 概述 本文主要讲述了ArrayList与LinkedList的相同以及不同之处,以及两者的底层实现(环境OpenJDK 11.0.10). 2 两者区别 在详细介绍两者的底层实现之前,先来简单看一 ...
- Day15_87_通过反射机制获取某个特定的方法
通过反射机制获取某个特定的方法 反射是通过 方法名+形参列表来区分各个方法的(形参列表要用class类型.加.class) 示例代码 import java.lang.reflect.Method; ...
- 读取ini配置文件 及 UI对象库
读取ini配置文件 配置项 读取API 写入API 实战:UI 对象库 读取ini配置文件 配置项 在每个 ini 配置文件中,配置数据会被分组(比如下述配置文件中的"config" ...
- 1-web 服务器 框架。
1.静态网页与动态网页 1.静态网页:无法与服务器进行交互的网页. 2.动态网页:能够与服务器进行交互的网页. 2.web与服务器 1.web:网页(HTML,CSS,JS) 2.服务器:能够给用户提 ...
- Wordpress学习链接整理
Wordpress学习链接整理 获取和使用 WordPress 中的全局变量 wordpress模板加载顺序汇总 WordPress载入页面时的模板加载机制(图) WordPress 条件判断标签及用 ...