java基本数据类型的转换

  • Post author:
  • Post category:java




java基本数据类型的转换

先了解Java的数据类型有哪些

在这里插入图片描述

转换分为自动类型转换(隐式转换)和强制转换( 显示转换)

自动转换:从小到大进行转换,byte ->short(char)->int->long->float->double

强制转换:double→float→long→int→short(char)→byte


注意

:强制转换可能会有数据溢出(右侧数值大小不能超过左侧类型范围)或者精度丢失(浮点数转整形)

byte short char 进行数据转换时,JVM首先会自动转为int类型,然后进行数据运算

byte b = 21;
int  a = b;

byte b1 =  21;
byte b2 = 23;

byte b3 = b1 + b2;//错误的  ,因为此时是   byte + byte = int + int
int d = a + b; //对的

为什么char类型也能计算

因为计算机底层会用二进制代表字符,一旦char进行数学运算,会按照一定的规则翻译成为一个数字

小表ASCII码表,范围(0~127),超过127无法解决编码问题

大表Unicode码表(万国表)范围(0~~)前面127和ACILL码表一样,后面有是许多国家的字体编码


注意



48 代表 ‘0’

97 代表 ‘a’

65 代表 ‘A’

Java不支持无符号数据类型。byte,short,int和long都是有符号数据类型。对于有符号数据类型,值范围的一半存储正数,一半用于负数,因为一个位用于存储值的符号。



版权声明:本文为qq_42224683原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。