10.整形数据类型

java整型包括:byte/short/int/long
java语言整数型常量有三种表示方法:
十进制
八进制:八进制以0开头,如013
十六进制:十六进制0x开头 如0x23
java语言整数型默认为int类型,如果要声明=成long类型在变量值后加入L,如:long 1=999999999L;


int i4 =100;//将一个int类型100字面值赋给i4变量

//将一个int类型的123字面值赋给long类型的i1
//int 类型容量小于long类型
//以下程序存在类型转换,只不过叫"自动类型转化"
long i2=123;

 

//由于123后面有一个L,所以上来就会把123看做long类型,
//所以以下类型不存在类型转化,只是一个普通的赋值运算
long i3 =123L;


//可以int类型-->long类型,自动转换
long i3=2147483647;


//程序将2147483648看做int类型,但是这个数据本身已经超出了int的取值范围。
long i4=2147483648;//所以会报错因为是过大的整数

long i4=2147483648L;//这样不会报错。


public class DateTypeTest02{
public static void main(String[] args){
long i1=1000L;

//将long类型转换成int类型,不能自动类型转化;编译无法通过
int i1=11;

//需要强制转化;需要加强制转化符;加
//加强制转化符后,虽然编译通过了,但是程序在运行阶段可能损失精度,所以一定要谨慎使用
int i1=(int)i1;


//记忆一个规则,如果这个整数没有超出byte的取值范围,可以直接将这个整数赋值给byte类型
byte b1=10;
byte b2=127;//这两个都是可以通过的

byte b3=128;//128本身已经超出了byte的取值范围,所以会编译失败,此时应加强制类型转化符。

//如果整数本身没有超出short的取值范围,可以将这个证书直接赋值给short
short s1=32767;

//若果整数本身已经超出了short的取值范围,则无法编译通过,需要加强制类型转化符
short s2=short(32768);


//最后结论:如果整数没有超过byte,short,char的取值范围,可以直接将这个证书赋值给byte,short,char
char u1=97;
char u2=65535;

char u3=65536;


}
}

int 类型转换成long类型只要不超过int的取值范围就可以自动转换
超过了以后可以在后面加一个L就能正常转换了
但long类型转换成int类型必须用强制类型转换

 

转载于:https://www.cnblogs.com/yyh8/p/6655173.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值