基本数据类型
Java编程语言是静态类型的,这意味着所有的变量,必须在使用之前先声明。这包括要说明变量的类型和名字,如你之前看到的:
int gear=1;
这样做会告诉你的程序,一个名为“gear”的字段存在,保存数值型数据,初始值为“1”。变量的数据类型确定其可能包含的值,以及可能对其执行的操作。除了int,Java编程语言还支持其他七种基本数据类型。基本类型由语言预定义,并由保留关键字命名。基本数据类型的值不与其他值共享状态。 Java编程语言支持的八个基本数据类型有:
- byte :字节数据类型是8位有符号二进制补码整数。 它的最小值为-128,最大值为127(含)。 字节数据类型可以用于在大型阵列中节省内存,实际上内存节省很重要。 它们也可以用于代替int,其限制有助于澄清您的代码; 变量范围有限的事实可以作为一种文档形式。
- short:短数据类型是16位有符号二进制补码整数。它的最小值是-32768,最大值为32767(含)。 与字节一样,适用相同的准则:在存储节省实际重要的情况下,您可以使用一个简短的大容量存储器来保存大型数组。
- int:默认情况下,int数据类型是32位有符号二进制补码整数。它的最小值为-2^31,最大值为2^31-1,在JavaSE8或者更高版本中,你可以使用int数据类型来表示一个无符号的32位整数。其最小值为0,最大值为2^32-1.使用Integer类将int数据类型用作无符号整数。有关详细信息,请参阅“数字类”一节。像compareUnsigned,divideUnsigned等静态方法,已经被添加到Integer类中以支持无符号整数的算术运算。
- long:长数据类型是64位有符号的二进制补码整数。最小值为-2^64,最大值为2^63-1。在JavaSErvice8或更高版本中,你可以使用long数据类型来表示一个无符号的64位长整型。其最小值为0,最大值为2^64-1。您需要的范围宽于int所提供的值时,请使用此数据类型。 Long类还包含compareUnsigned,divideUnsigned等方法,以支持unsigned long的算术运算。
- float: float数据类型是单精度32位IEEE 754浮点数。其数据范围超出了本部分讨论的范围,但在Java语言规范的浮点类型,格式和值部分中有讨论。与byte和short的建议一样,如果需要将大量的浮点数保存在内存中,请使用float。不应将此数据类型用于精确值,例如货币。为此,您将需要使用java.math.BigDecimal类。数字和字符串涵盖了Java平台 提供的BigDecimal和其他有用的类。
- double: double数据类型是双精度64位IEEE 754浮点数。其数据范围超出了本部分讨论的范围,但在Java语言规范的Floating-Point Types,Formats,and Values部分有讨论。对于十进制数来说,一般会默认选择这种数据类型。如上所述,这种数据类型不应该用于精确的值,例如货币。
- boolean: boolean 数据类型只有两种可能值:true和false。将此数据类型用于跟踪true / false条件的简单标志。该数据类型表示一位信息,但其“大小”不是精确定义的。
- char: char数据类型是一个16位Unicode字符。最小值为“\ u0000”(或0),最大值为“\ uffff”(或65,535(含))。
除了上面列出的八个基本数据类型之外,Java编程语言还通过java.lang.String类为字符串提供特殊支持。 将您的字符串包含在双引号内将自动创建一个新的String对象; 例如,String s =“this is a string”;. 字符串对象是不可变的,这意味着一旦创建,它们的值不能被更改。 String类在技术上不是基本数据类型,但是考虑到语言给予的特殊支持,你可能会倾向于认为它是这样的。 您将在Simple Data Objects中了解有关String类的更多信息。