Java 词法结构

Java 词法结构

规则

Int

0 2 0372 0xDada_Cafe 1996 0x00_FF__00_FF

 

Long

0l 0777L 0x100000000L 2_147_483_648L 0xC0B0L

 

Float

1e1f 2.f .3f 0f 3.14f 6.022137e+23f

 

Double

1e1 2. .3 0.0 3.14 1e-9d 1e137

 

操作

+=  -=  *=  /=  &=  |=  ^=  %=  <<=  >>=  >>>=

 

正确的示例

int a=0xDada_Cafe;//整数如果太长可以用下划线进行分割,此处是16进制数

float b=0x1.fffffep+127f;//电脑64位打印的结果是3.4028235E38,这里的字母P表示2,即2127次方

int c=1996;

double g=33e2;

float h=0x1ep-1f;

long p=0b1_1_1_0_1;//加上0b就可以把数字写成二进制的表示,这里表示的是29

 

错误写法示例

// float d=1996.3;//报错,因默认为double类型,要想编译通过要写成float d=1996.3f

// int f=9999e1;//报错,个人理解是因为int类型的数不支持指数写法

// float i=1.fffep-12f;//要加0x

// long q=0b1_1_1_0_2;//报错,最后一个数字2,不是二进制有效数字

 

这里面不常见的便是float b=0x1.fffffep+127f;中的p,又因为前面是e,很容易误以为是科学计数法中指数的标志,但其实这里的e是一个十六进制数,而p2,后面的+1272的指数,整个数便是0x1.fffffe*2127次方

 

输出结果:

a=-623195394

b=3.4028235E38

c=1996

g=3300.0

h=15.0

p=29

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值