JAVA学习笔记 - JAVA基本数据类型

JAVA基本数据类型

基本数据类型分类

JAVA基本数据类型可分为如下几种
实数:double, float 
整数:byte, short, int, long 
字符:char 
布尔值:boolean

数据类型大小(位)范围默认值
byte(字节)8-128 ~ 1270
shot(短整型)16-32768 ~ 327680
int(整型)32-2147483648 ~ 21474836480
long(长整型)64-9233372036854477808 ~ 92333720368544778080
float(浮点型)32-3.40292347E+38 ~ 3.40292347E+380
double(双精度)64-1.79769313486231570E+308 ~ 1.79769313486231570E+3080
char(字符型)16‘ \u0000 ~ u\ffff ’‘\u0000 ’
boolean(布尔型)1true/falsefalse

关于无符号型

无符号型
类型说明符为unsigned。在编译系统中,系统会区分有符号数和无符号数,区分的根据是如何解释字节中的最高位,如果最高位被解释为数据位,则整型数据则表示为无符号数。

无符号型
与上述三种类型匹配而构成,无符号基本型的类型说明符为unsigned int或unsigned。
(1)无符号短整型 类型说明符为unsigned short
(2)无符号长整型 类型说明符为unsigned long
(3)无符号型字节 类型说明符为unsigned char

各种无符号类型量所占的内存空间字节数与相应的有符号类型量相同。但由于省去了符号位,故不能表示负数

自动类型转换

自动类型转换指的是容量小的数据类型可以自动转换为容量大的数据类型。如图,黑色的实线表示无数据丢失的自动类型转换,而虚线表示在转换时可能会有精度的损失。

在这里插入图片描述
例如,可以将整型常量直接赋值给byte、 short、 char等类型变量,而不需要进行强制类型转换,只要不超出其表数范围即可。

        int intData = 2147483647;
		System.out.println(intData);//2147483647
		double doubleData = intData;
		System.out.println(doubleData);//2.147483647E9
		int intData2 = 2147483647;
		System.out.println(intData2);//2147483647
		float floatData = intData2;
		System.out.println(floatData);//2.14748365E9 精度损失

强制类型转换

强制类型转换,用于显式的转换一个数值的类型。在有可能丢失信息的情况下进行的转换是通过强制类型转换来完成的,但可能造成精度降低或溢出。
语法格式

(type)var

运算符“()”中的type表示将值var想要转换成的目标数据类型。
例:

double doubleData  = 3.14; 
int intData = (int)doubleData;   
char charData = 'a';
int intData2 = charData+1;
System.out.println(intData); //3
System.out.println(intData2);//98
System.out.println((char)intDarta2);//b

当将一种类型强制转换成另一种类型,而又超出了目标类型的表数范围,就会被截断成为一个完全不同的值。
例:

int intData = 300;
byte byteData = (byte)intData;    
System.out.println(byteData);//强制转换后值为44

注意,不能在布尔类型和任何数值类型之间做强制类型转换。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值