2.1 变量
A.定义变量的语法形式:
1.先声明,再赋值(常用)
数据类型 变量名;
变量名 = 值;
int age;
age = 100;
2.声明并赋值(常用)
数据类型 变量名 = 值
int age = 100;
3.多个同类型变量的声明并赋值(了解)
数据类型 变量1 ,变量2 ,变量3;
int a , b, c = 3;
a = 1;
b = 2;
//int a = 1,b = 2,c = 3;
B.变量的注意点:
1.变量必须先定义,才能使用。
2.变量名不能冲突,同一个作用域内。
3.目前所学的变量:先初始化,再使用。
2.2数据类型
Java中的数据类型分为基本数据类型和引用数据类型两种。
基本数据类型 | 引用数据类型 |
---|---|
整数: byte,short,int.long | 字符串: String |
浮点 : float,double | 数组 |
布尔: boolean | 对象 |
字符: char |
Java是强类型语言:对数据类的要求很严格,声明是什么类型的变量,就要存储什么类型的数值。
A.基本数据类型分为:4类8种
1.整数型:
byte | 字节 | 1字节 | 8bit | -128~127 |
---|---|---|---|---|
short | 短整型 | 2字节 | 16bit | -32768~32767 |
int | 默认类型 | 4字节 | 32bit | -2147483648~2147483647 |
long | 长整型 | 8字节 | 64bit | 9223372036854775807L |
注意!在声明long类型的时候,数值后加L或l。建议L。
byte a1 = 100;
short a2 = 100;
int a3 = 100;
long a4 = 100L//注意!:int为整数的默认类型,如需要为long类型赋值,需要在值的后面追加“L”
2.浮点型
float | 4字节 | 32bit | “F” |
---|---|---|---|
double | 8字节 | 64bit | 默认类型 |
float a1 =100F;//注意!double是浮点的默认类型,在给float类型赋值的时候,需要在值后面追加“F”
double a2 = 100;
科学计数法:
2E3 等价于 2*10^3 = 2000
3E5 等价于 3*10^5 = 300000
3.布尔型
类型 | 字节 | 取值范围 | 描述 |
---|---|---|---|
boolean | 1字节 | true/false | 仅可描述“真”或者“假” |
boolean b1 = true;//直接赋值true
boolean b2 = false;//直接赋值false
boolean b3 = 3>5;//赋值一个结果为true/false的表达式
4.字符型
类型 | 字节 | 取值范围 | 字符编码 |
---|---|---|---|
char | 2字节 | 0—65535 | Unicode字符集(万国码) |
Unicode字符集支持ASCII编码(美国标准信息交换码)。
Unicom中每个字符都对应十进制整数,从而可以使用多种方式赋值。
char c1 = 'A';//通过''描述为字符赋值
char c2 = 65;//通过十进制数字65在字符集中对应的字符赋值
char c3 = '\u0041'//通过十六进制数41在字符集中所对应的字符赋值
5.转义字符
转义字符:将字符进行转义—>语法上使用\
转义字符 | 描述 |
---|---|
\n | 换行符 |
\t | 缩进(制表位) |
\\ | 反斜线 |
\’ | 单引号 |
\" | 双引号 |
1.把具有特殊作用的字符,转为普通的字符,不再起作用:\' \" \\
2.把一些普通的字符,转为有特殊含义的作用:\n \t
6.引用数据类型(字符串)
String 用于表示一个字符序列,使用 " " 引起来的都是字符串的内容
类型 | 取值范围 | 总府编码 |
---|---|---|
String | 任何“ ”之间的字面值 | Unicode字符序列 |
String str1 = "Hello World...";
String str2 = "你好";
String str3 = "How are you ?"
2.3 数据类型的转换
Java这门语言,虽然是强类型语言:要求数据类型一致,但是实际上允许我们在一定程度上可以转换。
自动转换:
1.两种类型相互兼容。
2.目标类型取值范围大于源类型取值范围。
short s = 123;
int i = s;
强制转换:
1.两种类型相互兼容。
2.目标类型取值范围小于源文件的取值范围。
int i = 123;
short s = (short)i; //需要加强制转换符的语法,说明要强制转换为哪种类型:(要转换的类型)数值
取值范围:
byte>short>int>long>float>double
char
强制类型转换规则:
整数长度足够,数据完整。
int i = 100;
byte b = (byte)i;//b=100
整数长度不够,数据截断。
int i = 1000;
byte b = (byte)i;//b=16(符号为变化,可能变为负数)
小数强转整数,数据截断。
double d = 2.5;
int i = (int)d;//i=2(小数位舍掉)
字符整数互转,数据完整。
char c = 65;
int i = c;//i=65
boolean的取值为true/false,不可与其他类型转换.