使用byte,short和其他原始类型

use*_*x01 6 java primitive-types

为什么我不经常看到它们.我只看到它们主要用于网络,其中大小确实很重要.但是,例如,我有一个仅使用1-10范围内的数字的变量,我不应该使用字节吗?我习惯使用尽可能小的内存来编写C/C++,为什么不是这样在java中呢?

Ant*_*ala 10

实际上在大多数支持Java的处理器中,32位整数使用起来最快.例如,在Intel处理器上,32位整数寄存器具有最短的操作码,而16位整数的处理速度稍慢.此外,大多数时候使用bytes或shorts不会为你节省空间.

它与OOPness无关; 即使在没有任何OOP概念的C语言中,int几乎每个数字都使用它很常见,因为它的大小经常被选择,因此它是给定体系结构最快宽度.