java数据类型及其转化

1.java数据类型

java中数据类型主要有两种:基本数据类型和引用数据类型

1.2java八种基本数据类型

整数数据类型:

byte(字节)   8位(8bit)  取值范围-128~127

short(短整形)2字节 16bit

int(整形)4字节 32bit

long(长整形)8字节 64bit

注意:如果定义一个整数没有加上任何标识的时候,默认是int类型的数据

小数数据类型:

float(单精度浮点型)4字节 32bit

double(双精度浮点型)8字节 64bit

布尔类型: 布尔类型只有两个值:true或false

boolean  1字节或者4个字节

java规范:如果使用boolean声明一个基本类型的变量时,那么该变量占4个字节;如果使用boolean声明一个数组类型的时候,那么每个数组的元素占一个字节。

字符类型:

char 2字节 16bit

 

2.数据类型转换

小数据类型----------->大数据类型   自动类型转换

大数据类型----------->小数据类型   强制类型转换 (编译时报错)

如图所示:

将上图报错行代码修改为:short st= (short) it;  即可

但是大数据类型往小数据类型转换可能会损失精度,慎用

如下代码:

int i=128;
byte b= (byte) i;
System.out.println(b);

输出结果:

byte数据类型的取值范围-128~127,因此有的人可能会想损失精度过后这里输出b为什么不是127呢,这里是计算机原理中原、反、补码的问题,就不深入了。(在计算机中如果一个二进制数的最高位是 1,那么该数据肯定是一个负数。如果一个二进制数的最高位是0,那么该数据肯定是一个正数)

注意:

1、凡是byte、short、char数据类型在运算的时候都会自动转换成int类型的数据再运算!

2、两个不同数据类型的数据在运算的时候结果取决于大的数据类型。

 

原文出自:https://my.youkuaiyun.com/qq_37094660(如需转载请注明出处)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值