整数类型

Java提供4种整数类型:byte,short,int和long
类型
占用的二进制位数
取值范围
byte
8
-128~127
short
16
-32768~32767
int
32
-2147483648~2147483647
long
64
-9233372036854775808~9233372036854775807
如上表所示,所有的整数类型都有正负值之分.Java不支持无符号整数.其他许多语言都支持有符号整数和无符号整数,然而,Java的设计者感觉无符号整数是不必要的.
注意:从技术上讲,Java运行时系统可以使用任意大小的空间来存储基本类型,然而在任何情况下,类型都必须按照指定的规则来工作.
最常用的整数类型是int.int类型的变量常被应用于循环控制,数组索引,以及执行常规的整数数学计算.
当需要的整数范围超过int的取值范围时,就使用long,例如,下面这个计算一立方英里的立方体中包含多少个立方英寸的程序都需要long类型
    public static void main(String args[])
    {
        long ci;
        long im;
        
        im = 52800 * 12;
        ci = im * im * im;
        
        System.out.println("there are"+ci+"cubicinches in cubic mile");
    }
程序输出如下:
there are254358061056000000cubicinches in cubic mile
很明显,结果已经超出int变量的取值范围.
最小的整数类型是byte,在处理无法直接和Java的其他内置类型兼容的原始二进制数据时,byte类型的变量特别有用.short类型可以创建短整数,当不需要int那么大的取值范围时,可以使用short类型的变量.
问:你提到有4种整数类型:int,short,long和byte.但是,我听说在Java中,char也可以纳入整数类型.你能解释原因吗?
答:Java的正式规范定义了名为整数类型的类型类别,其中包含byte,short,int,long和char.之所以叫做整数类型,是因为他们都保存整数的二进制值.但是,前4种类型的目的是表示整数的数字量,而char则用于表示字符.因此,char的主要用途和其他整数类型的主要用途有根本区别.