Java基础---数据类型转换

▼魔方 西西 提交于 2020-02-17 15:02:14

1.Java数据类型

1.1 Java数据类型分类

1.1.1 java编程语言是一门强类型语言,当然也有弱类型语言,比如JavaScript
强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言
弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
在这里插入图片描述
TIPS: 1b=1位
1B(字节)=8位
1KB(一千字节)=1024B

i)整型
在这里插入图片描述
ii)浮点型
在这里插入图片描述
iii)字符型
在这里插入图片描述
对于char字符需要注意的是,经常使用转义字符,如\t制表符,、\n表示换行符等
其中使用\t时是以8的倍数补齐,例如:

char ch = '\t';
System.out.println("abcdefghabcdefgh");
System.out.println(ch+"abcdefghabcdefgh");//前面空8位
System.out.println("abcdefg"+ch+"habcdefgh");//由于"abcdefg"有7位,补齐1位

在这里插入图片描述
iiii)boolean类型
在这里插入图片描述
常见转换问题
(1)

float num =3.14;//3.14在java中默认是double
System.out.println(num);//显示错误

在这里插入图片描述
报错原因是因为在java中小数默认是double类型,如果转为float则会损失精度(后面讲具体原因)
(2)

Test01
int num = 10;
byte n = (byte)num;//这里使用强制转换为byte可以 

Test02
int num = 128;
byte n = (byte)num;//结果为-128,原因是超出byte表数范围(-128-127),这里可以看原码反码补码理解

(3) 大数据类型和小数据类型之间的关系(重点)
在这里插入图片描述
例:

Test01
int num = 10;
float f = 'A'+num+12+3.14F+12.12;//这里得出的数据类型往大类型靠,显然是double

Test02
char ch = 'A'+num//往int类型靠

2.计算机中整数的存储

在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!