RTa*_*son 1 java double int var long-integer
现在我一直在尝试学习 Java 编程,我想知道我们为什么要使用诸如Float, 之类的东西short,以及int何时可以只使用Long和Double?
我不明白那部分。
很好的问题,特别是如果你来自像这样的语言 JavaScript不区分数字类型的。
Java 比那些语言要严格一些,你写的所有东西首先被编译成所谓的字节码,有点像汇编语言,但它只能被 Java 虚拟机 (JVM) 读取。因此,您必须准确指定表示数据所需的位数。即使使用更抽象的概念,如String,它仍然会成为 JVM 可以读取的代码,并准确说明它代表多少位。
以下是它在 Java 中的分解方式:
byte= 1 字节,有符号 = 1 个符号位和 7 个幅度位(在 Wikipedia 上阅读更多信息)short = 2 个字节,有符号 = 1 个符号位和 15 个幅度位int = 4 字节,有符号 = 1 个符号位和 31 个幅度位long = 8 字节,有符号 = 1 个符号位和 63 个幅度位float= 4 个字节,有符号 = 1 个符号位,8 个指数位,23 个尾数位(在 Wikipedia 上阅读更多信息)double = 8 个字节,有符号 = 1 个符号位,11 个指数位,52 个尾数位char = 2 个字节,无符号 = 16 个幅度位boolean = 1 字节,无符号 = 8 位boolean在booleans = 1 个半字节 = 4 位的数组中请注意,这些都是小写的。这意味着它们是原语,并且与数组一起构成了Java中所有数据的构建块。
还有这些Title-Case类,Java 有时会使用这些类来包装原语(包装是当您使用类来表示类内部的对象时,例如购买平板电脑并将其放入盒子中。您只关心平板电脑,但是你得到它周围的盒子来临时代表和握住它)。这些如下:
Byte 包裹 byteShort 包裹 shortInteger 包裹 intLong 包裹 longFloat 包裹 floatDouble 包裹 doubleCharacter 包裹 charBoolean 包裹 booleanNumber作为一个通用的号码,并且可以是Byte,Short,Integer,Long,Float,Double,或自定义相同数目BigInteger。您甚至可以使用它来制作自己的数字!您绝对可以使用double和long为您的所有号码!但是,当您处理如此多的数字时(请记住:Java 中的所有内容实际上都归结为数字),您应该使用尽可能少的数据来完成一项任务,以免内存不足。
这是一种即使像 Google 这样的大公司也使用的做法,正如我们在江南 Style 的视图计数器超过 的限制时int所看到的那样,这表明他们最初更喜欢仅使用 32 位数字作为计数器而不是一个 64 位的。但是,现在他们需要它,他们更新了。这是我建议您采用的做法!
| 归档时间: |
|
| 查看次数: |
890 次 |
| 最近记录: |