ven*_*syv 8 java primitive primitive-types
是否有一个包定义了我可以在项目中导入的Java基元的大小?我正在做一些手动位设置,我保留一个字节索引.我currentByte += 4设置一个int(魔术数字不赞成)时我不想做,我宁愿这样做currentByte += <SomePackage>.SIZE_OF_INT
我想我可以定义自己的,但这有点笨重,特别是如果那些在某个地方可用.
fge*_*fge 24
不是一个类,但你有Integer.SIZE,等等和for Long浮点类.你也有*.BYTES.
因此Integer.SIZE是32,Integer.BYTES是4,Double.SIZE是64和Double.BYTES8等等; 所有这些都是int你想知道的情况.
注意:*.BYTES仅在Java 8之后定义(感谢@Slanec注意)
(*.SIZE出现在Java 5中,但你也至少使用了吧?)
是的,这是由JDK定义的,因为JLS本身定义了原始类型的大小; 因此,无论在任何平台上的Java实现,您都可以保证这些常量具有相同的值.
小智 9
原语大小的规范包含在Java语言规范的4.2节中
整数类型是byte,short,int和long,其值分别为8位,16位,32位和64位二进制补码整数,以及char,其值为16位无符号整数代表UTF-16代码单元(§3.1).
这是该标准,将不会改变,所以一个并不需要它们导入,你可以用它们作为幻数(虽然作为FGE指出,这些都是魔术数字存储在合理的地方在不同的包装类从Java 5开始,你应该使用它们而不是自己重新定义它们.
| 归档时间: |
|
| 查看次数: |
1070 次 |
| 最近记录: |