网站首页 > java教程 正文
数据类型的转换是在所赋值的数值类型和被变量接收的数据类型不一致时发生的,它需要从一种数据类型转换成另一种数据类型。数据类型的转换可以分为隐式转换和显式转换两种。
隐式转换,是指在混合运算时,范围值小的会自动转换为大的。有byte→short→int→long→float→double和char→int两种情况;显示转换就是你一眼就可以看出用了某种方法进行转换的意思。
7.1 数值转字符串
将整型(byte、short、int、long)和浮点型(float、double)转为字符串,有3种方法,分别是用+号,valueOf方法和toString方法三种。
/*
* 数据类型转换
*/
public class TypeChange {
public static void main(String[] args) {
// int转为字符串
int i = 100;
String is = "" + i;
System.out.println(is);
// double转为字符串
double d = 12306.25;
String ds = String.valueOf(d);
System.out.println(ds);
// long转为字符串
long l = 999999;
String ls = Long.toString(l);
System.out.println(ls);
}
}
输出结果
100
12306.25
999999
7.2 字符串转数值
字符串转成数值有两种方法,分别是用数值类型的parse()和Value()方法,如将字符串转为整型,用Integer.parseInt(String str)或Integer.valueOf(String str).intValue()。如果转换失败,会报java.lang.NumberFormatException异常。
/*
* 数据类型转换
*/
public class TypeChange {
public static void main(String[] args) {
String si = "100";
//将字符串转成整型
int i = Integer.parseInt(si);
System.out.println(i);
//将字符串转成浮点型
String sf = "969.25";
float f = Float.valueOf(sf).floatValue();
System.out.println(f);
}
}
输出结果
100
969.25
7.3 布尔转换
布尔值和字符串互相转换的方法,其实和数值和字符串的互转并没有多大区别,只是内容不用而已,一个是数值,一个是true或false。
/*
* 数据类型转换
*/
public class TypeChange {
public static void main(String[] args) {
boolean bs = false;
//布尔转为字符串
String s = String.valueOf(bs);
System.out.println(s);
// 字符串转为布尔
String sb = "true";
boolean b = Boolean.parseBoolean(sb);
System.out.println(b);
}
}
输出结果
false
true
7.4 字符转换
将字符char转成字符串的方法,同数值、布尔类型并没有多大区别,有区别的在于字符串转成字符串,它用String.charAt(index)方法。
/*
* 数据类型转换
*/
public class TypeChange {
public static void main(String[] args) {
//字符转为字符串
char cs = 'A';
String s = String.valueOf(cs);
System.out.println(s);
// 字符串转为字符
String sc = "BCc";
char c = sc.charAt(1);
System.out.println(c);
}
}
输出结果
A
C
7.5 转义字符
字母前面加上捺斜线"\"来表示常见的那些不能显示的ASCII字符,称为转义字符。如\0,\t,\n等,就称为转义字符。Java常见的转义字符表如下。
/*
* 数据类型转换
*/
public class TypeChange {
public static void main(String[] args) {
//用转义字符输出双引号"和tab
String s = "\"老陈\"不老,说:Java\tPython\tApp";
System.out.println(s);
}
}
输出结果
"老陈"不老,说:Java Python App
好了,Java数据类型的转换内容就这么多了,如果你觉得老陈这样讲还可以的话,你就转发和点赞,你的轻轻一点,就是对老陈继续创作的最大鼓励和支持。
一个当了10年技术总监的老家伙,分享多年的编程经验。想学编程的朋友,可关注今日头条:老陈说编程。我在分享Python,前端、Java和App方面的干货。关注我,没错的。
- 上一篇: java程序设计基础字符型布尔型变量
- 下一篇: 关于Java正则和转义中\\和\\\\的理解
猜你喜欢
- 2024-10-13 Java正则表达式(java正则表达式匹配换行符)
- 2024-10-13 JAVA面试考点合集!常用关键字及修饰符
- 2024-10-13 Java基础入门(Character类)(java character.isletter)
- 2024-10-13 好程序员Java培训分享Java之命名、标示符、变量
- 2024-10-13 JAVA新特性(二)文字块(java文字是什么类型)
- 2024-10-13 “全栈2019”Java第十六章:下划线在数字中的意义
- 2024-10-13 基础教程:Java Character类(java教程 chm)
- 2024-10-13 “全栈2019”Java异常第五章:finally关键字(应用场景)详解
- 2024-10-13 “全栈2019”Java第十四章:二进制、八进制、十六进制
- 2024-10-13 Java零基础程序阅读五(java基础入门课后编程题)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)