JAVA整形和浮点型的知识点整理

首先是JAVA整形数据的长度表格

 

类型存储需求取值范围
int4字节-2 417 483 648~2 417 483 647(2的31次方)
short2字节-32768~32767(2的15次方)
long8字节-9223 372 036 854 775 808~9223 372 036 854 775 807(2的63次方)
byte1字节-128~127(2的7次方)

 

 

 

 

 

 

 

 

 

 

 

比较特殊的是long类型的数据定义方式及八进制,十六进制的数据定义方式。下面用代码演示。

 

 

longNum1即使声明为long类型,但是由于没有在数字末尾加上L字符,所以编译器还是以默认的int类型进行存储,longNum2是正确的long类型的声明方式,longNum3由于长度已经超出int类型能够支持的长度,但是又没有在数字末尾加L字符编译器就报错了。

 

下面介绍非十进制的整形的声明方式。

 

int eightNum = 011;//表示八进制的9
	
int sixteenNum = 0x10;//表示十六进制的16

 

需要注意的是八进制的数字表示方式比较容易引起混淆,所以不推荐,建议由需要的话,使用十六进制的数字表示方式,另外对于八进制和十六进制的数字表示方式来说是没有-这个符号的,要表示负数需要自己进行换算。

 

下面是对JAVA浮点型数据的介绍 

 

类型存储需求取值范围
float4字节大约+/-3.402 823 47E+38F(有效位数为6~7位)
double8字节大约+/-1.797 693 134 862 315 70E+308(有效位数为15位)

 

浮点型的数据定义方式如下

 

float floatNum = 3.1415F;
	
double doubleNum = 3.14159265412334599D;

 

 

一样是需要在数字的最后加上符号F或者D加以区分,如果不加任何符号,使用默认的话,则为double类型。

 

然后介绍下科学计数法。

 

float floatNum2 = 3e+2F;
	
double doubleNum2 = 3.32E-2D;
	
double doubleNum3 = 0x3.E2p-2D;

 

十进制数字用E或者e表示科学计数法,比较有意思的是如果是十六进制的数字,用p来表示科学计数法。

 

最后是三个特殊的浮点数值。

 

正无穷:Double.POSITIVE_INFINITY;负无穷:Double.NEGATIVE_INFINITY;NaN:Double.NaN;

 

并且判断一个数字是否为NaN也应该采用下面的方式

 

if(Double.isNaN(Double.NaN)){
}

 

附上各种数据类型之间的转换关系图

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值