为什么在java中将byte和short解释为整数?

问题描述:

我开始知道byte和short在Java中被解释为int类型。如果这是正确的,请让我知道为什么我们需要在Java中的字节和简单的原始数据类型。它只是由编译器进行类型检查吗?为什么在java中将byte和short解释为整数?

而且字节会占用1个字节的内存,short将占用2个字节的内存,而int类型占用4个字节。请让我知道,如果将字节和短类型保存为4字节并不是性能问题,因为字节和短元素被解释为int类型。

+1

可能的重复[为什么Java API使用int而不是short或byte?](http://stackoverflow.com/questions/27122610/why-does-the-java-api-use-int-instead- short-or-byte) – Tom

+0

[为什么Java API使用int而不是short或byte?](// stackoverflow.com/q/27122610) – Tom

我开始知道byte和short在Java中被解释为int类型。

不,你没有。当用作算术表达式或时,您'知道'它们是促销int当用作实际参数时,它被指定为int作为形式参数。

如果这是正确的

它不是。

请让我知道为什么我们需要Java中的字节和简单的基本数据类型。

保持较小的值。

它只是用于编译器的类型检查吗?

并且还字节将采取的存储器1个字节和短将需要2个字节的存储器,和整型需要4个字节。

确切地说,这与您最初的毫无根据的断言相矛盾。

请让我知道,如果它不是一个性能问题,节省4个字节的字节和短类型,因为字节和短被解释为int类型。

不是。它不会发生。