变量
变量的概念
计算机内存中的一块存储空间,是存储数据的基本单元。
我们将整个内存比作一个酒店,存储数据的基本单元比作是酒店的房间。
酒店的房间有不同的类型(标间,套房),每间房都有唯一的门牌号,每个房间的住客亦不相同。
酒店的房间就相当于变量。房间的类型就相当于数据类型,房间门牌号相当于变量名,房间的住客相当于存储的值。
变量的组成
一个完整的变量由数据类型、变量名和值组成。
变量的定义
变量的声明
数据类型 变量名;
例如:int money;
变量的声明只是在内存中开辟了对应的变量空间。
变量的赋值
变量名 = 值;
money = 1;
变量的赋值是将具体的值存储到变量空间中。
注意:
1.赋值时的 =,是将等号后边的值赋给前边的变量。
2.Java是强类型语言,变量的类型必须yu数据的类型一致。
变量的定义方式
1.先声明,在赋值
数据类型 变量名;
变量名 = 值;
2.声明并赋值:
数据类型 变量名 = 值;
3.多个同类型变量的声明与复制
数据类型 变量1 , 变量2 = 值2, 变量3;
变量1和变量3只进行了声明,变量2声明并且赋值。
基本数据类型
Java是强类型语言。在Java中任何一个值,都有其对应类型的变量。
Java中的数据类型可以分为两大类:一类是基本数据类型,一类是引用数据类型。
基本数据类型可以分成四类:整数、小数、布尔、字符。
整数
类型 | 字节 | 取值范围(二进制) | 取值范围(十进制) |
---|---|---|---|
byte | 1字节 | -2^7 ~ 2^7 - 1 | -128 ~ 127 |
short | 2字节 | -2^15 ~ 2^15 - 1 | -32768 ~ 32767 |
int | 4字节 | -2^31 ~ 2^31 - 1 | -2147483648 ~ 2147483647 |
long | 8字节 | -2^63 ~ 2^63 - 1 | -9223372036854775808 ~ 9223372036854775807 |
注意:int类型为整数的默认类型,如果需要long类型赋值,需要在值后边加"L"。例如 long a = 2L;
在计算机中,所有的数值都是采用二进制存储,每个bit为只能存储0或者1。8个bit位为一个字节。所以类型的取值范围和类型所占字节数有关。
小数(浮点数)
类型 | 字节 | 负数取值范围 | 正数取值范围 |
---|---|---|---|
float | 4字节 | -3.4E + 38 ~ -1.4E - 45 | 1.4E - 45 ~ 3.4E + 38 |
double | 8字节 | -1.7E + 308 ~ -4.9E - 324 | 4.9E - 324 ~ 1.7E + 308 |
浮点型数值采用科学计数法表示:
2E3 等价于 23^10(结果:2000.0)
3E5 等价于 35^10(结果:300000.0)
注意:double为浮点数的默认类型,如需为float类型,需要在值后追加“F”。
例如:float a = 3.3F;
布尔
类型 | 字节 | 取值范围 | 描述 |
---|---|---|---|
boolean | 1字节 | true/false | 只有“真”或者“假” |
可以直接赋值true/false,也可以赋值一个结果为true/false的表达式
注意:Java中boolean不能参与算数运算。
字符
类型 | 字节 | 取值范围(无符号数) | 字符编码 |
---|---|---|---|
char | 2字节 | 0 ~ 65535 | Unicode字符集(万国码) |
Unicode字符集支持ASCII编码(美国标准信息交换吗)
Unicode中每个字符都对应一个十进制数,从而可以使用多种方式赋值。
字符赋值:char c1 = ‘A’;(通过 ‘’ 描述为字符赋值)
整数赋值:char c2 = 65;(通过十进制64在字符集中对应的字符赋值)
进制赋值:char c3 = ‘\u0041’;(通过16进制数41在字符集中所对应的字符赋值)
Java中共8种基本数据类型,其他都为引用数据类型。