Java 基本数据类型与数据类型转换

Java有以下八大基本数据类型:
int byte short long double float char boolean
基本数据类型又分为数字型,字符型(char)与布尔型(boolean)

类型所占空间(字节)范围包装类
byte1-128~127Byte
int4-2,147,483,648~2,147,483,647Integaer
short2-32768~32767Short
long8-263~263 -1Long
float4Float
double8Double
char1\u0000~\uffffCharacter
boolean1Boolean

自动转换规则

  1. 布尔型不参与转换
  2. 规则: byte/char/short -> int -> long -> float -> double
    如操作数之一为double,则另一个操作数先被转化为double,再参与算术运算。

如两操作数均不为double,当操作数之一为float,则另一操作数先被转换为float,再参与运算。
如两操作数均不为double或float,当操作数之一为long,、则另一操作数先被转换为long,再参与算术运算。
如两操作数均不为double、float或long,则两操作数先被转换为int,再参与运算。
将小范围类型变量转换成大范围类型的变量。Java会自动扩宽类型

看上面那张图,各个基本数据类型的取值范围都有了,如果一个取值范围包括了另一个的,那么赋值时,小的可以自动转换成大的

例子:

long d = 333;   float e = d; //可以

short a = 1; char b = a; //不行,因为取值范围不是包含,而是交叉

int a = 1; byte b = a; //不行,大的转成小的,要强制类型转换,byte b = (byte) a;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值