Java 三种进制的数值常量操作
我就废话不多说了,大家还是直接看代码吧~
packagecn.nxl2018; classTest{ //十进制常量赋值 voiddecimals(){ byteb=10; shorts=10; charch=69; inti=10; longl=10l;//l/L可加可不加 floatf=10.1f;//floatf=10,可以不加f将10默认转换为float类型,输出10.0。但当是小数时必须加f。 floatf2=10.2e3f;//可以用指数形式来表示 doubled=10.1;//小数常量默认为double类型 doubled1=10.01d;//d是可以省略的 } //八进制常量赋值 voidocta(){ byteb=03; shorts=03; charch=076; inti=03; longl=03; floatf=03.1f;//非八进制数,等价于3.1f doubled=03.1d;//非非八进制数,等价于3.1d //也就是说浮点数不能表示八进制数 } //十六进制常量赋值 staticvoidhex(){ byteb=0x12; shorts=0x12; charch=0x78; inti=0x12; longl=0x12; floatf=0x1.2p2f;//十六进制用p表示指数,不是e;另外十六进制浮点数必须以指数形式表示 doubled=0x1.2p2d; //java中没有提供二进制常量表示形式 //如果给变量赋值为负数的时候,十进制的话直接加负号,十六进制直接在最高位设置为1 } }
补充:Java整数常量进制表示
Java针对整数常量提供了4种表现形式
二进制(01),以0b开头,如:0b10000表示16
八进制(0~7),以0开头,如:020表示16
十进制(0~9),就是我们生活中使用的,如:16就表示16
十六进制(0~9,a~f),以0x开头,如:0x10表示16
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。