强类型语言:要求变量的使用要严格符合规定,所有的变量都必须先定义后才能使用(安全性高,但是速度慢)。比如Java。
弱类型语言:比如JS、VB。
Java有八种基本数据类型来存储数值、字符和布尔值。
1. 数值型
整数类型:
1B(byte,字节)= 8 bit(位)
1KB(Kilobyte,千字节)=1024B
1MB(Megabyte,兆字节,百万字节,简称“兆”)=1024KB
1GB(Gigabyte,吉字节,十亿字节,又称“千兆”)=1024MB
1TB(Terabyte,万亿字节,太字节)=1024GB
byte | short |
---|---|
1字节 | 2字节 |
取值范围:-128~127 | 取值范围:-32768~32767 |
int | long |
---|---|
4字节 | 8字节 |
-2147483648~2147483647 | -9223372036854775808~9223372036854775807 |
整数型用来存储整数数值,既没有小数部分的数值。可以是正数,也可以是负数。整型数据在Java中有3种表示形式,分别为十进制、八进制和十六进制。
- 十进制
如120、0、-127
除了数字0,不能以0作为其他十进制数的开头。
- 八进制
如0123(转换成十进制数为83)、-0123(转换为十进制数为-83)
八进制数必须以0开头。
- 十六进制
如0x25(转换成十进制数为37)、0Xb01e(转换成十进制数为45086)
十六进制数必须以0X或者0x开头。
在定义以上4种类型变量时,要注意变量的取值范围,超出相应的范围就会出错。对于long型值,若赋给的值大于int型的最大值或小于int型的最小值,则需要在数字后加L或l,表示该数值为长整数。如long sum=2137382349L。
浮点类型:
float | double |
---|---|
4字节 | 八字节 |
1.4E-45~3.4028235E38 | 4.9E-324~1.7976931348623157E308 |
在默认情况下,小数都被看做double型,若使用float型小数,则需要在小数后面添加F或f。可以使用后缀d或D来明确表明这是一个double类型数据,不加d不会出错,但声明float型变量时如果不加f,系统则会认为变量是double类型,从而出错。
2.字符类型:
char |
---|
2字节 |
在定义字符型变量时要以单引号表示,如‘s’表示一个字符,而“s”则表示一个字符串,虽然只有一个字符,但由于使用双引号,它仍表示字符串,而不是字符。
由于字符a在Unicode表中的排序位置是97,因此允许将上面的语句写成
char x = 97;
3.布尔类型:
boolean |
---|
true |
false |
布尔类型又称为逻辑类型,只有true和false两个值,分别代表布尔逻辑中的“真”和“假”。布尔值不能与整数类型进行转换。布尔类型通常被用在流程控制中作为判断条件。