1.关键字与标识符
1.1 java关键字的使用
- 定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
- 特点:关键字中所字母都为小写
- 具体哪些关键字:
1.2 保留字:现Java版本尚未使用,但以后版本可能会作为关键字使用。
- 具体哪些保留字:goto 、const
- 注意:自己命名标识符时要避免使用这些保留字
1.3 标识符的使用
- 定义:凡是自己可以起名字的地方都叫标识符。
- 涉及到的结构:包名、类名、接口名、变量名、方法名、常量名
- 规则:(必须要遵守。否则,编译不通过)
- 规范:(可以不遵守,不影响编译和运行。但是要求大家遵守)
- 在起名字时,为了提高阅读性,要尽量意义,“见名知意”
2 变量的使用(重点)
2.1 变量的分类
2.1.1 按数据类型分类
- 整型:byte(1字节=8bit) \ short(2字节) \ int(4字节) \ long(8字节)
- ① byte范围:-128 ~ 127
- ② 声明long型变量,必须以"l"或"L"结尾
- ③ 通常,定义整型变量时,使用int型。
- ④ 整型的常量,默认类型是:int型
- 浮点型:float(4字节) \ double(8字节)
- ① 浮点型,表示带小数点的数值
- ② float表示数值的范围比long还大
- ③ 定义float类型变量时,变量要以"f"或"F"结尾
- ④ 通常,定义浮点型变量时,使用double型。
- ⑤ 浮点型的常量,默认类型为:double
- 字符型:char (1字符=2字节)
- ① 定义char型变量,通常使用一对’’,内部只能写一个字符
- ② 表示方式:
- 1.声明一个字符
- 2.转义字符
- 3.直接使用 Unicode 值来表示字符型常量
- 布尔型:boolean
- ① 只能取两个值之一:true 、 false
- ② 常常在条件判断、循环结构中使用
2.1.2 按声明的位置分类(了解)
2.2 变量使用的注意点:
- ① 变量必须先声明,后使用
- ② 变量都定义在其作用域内。在作用域内,它是有效的,出了作用域,就失效了
- ③同一个作用域内,不可以声明两个同名的变量
2.3 基本数据类型变量间运算规则
2.3.1 自动类型转换(只涉及7种基本数据类型)
- byte 、char 、short --> int --> long --> float --> double
- 特别的:当byte、char、short三种类型的变量做运算时,结果为int型
- 说明:此时的容量大小指的是,表示数的范围的大和小。比如:float容量要大于long的容量
结论:当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。
2.3.2 强制类型转换(只涉及7种基本数据类型):自动类型提升运算的逆运算。
- 1.需要使用强转符:()
- 2.注意点:强制类型转换,可能导致精度损失。
long l = 1234L;
double d = 5.67;
int i = (int) l;
float f= (float) d;
i = (int) d;
2.3.3 String与8种基本数据类型间的运算
- 1.String属于引用数据类型,翻译为:字符串
- 2.声明String类型变量时,使用一对""
- 3.String可以和8种基本数据类型变量做运算,且运算只能是连接运算:+
- 4.运算的结果仍然是String类型
避免:
String s = 123;//编译错误
String s1 = “123”;
int i = (int)s1;//编译错误
2.3.4 8种基本数据类型转换成String
public static void main(String[] args) {
int i = 123;
//1.toString
//先把基本数据类型装箱,再用对象的toString()方法
Integer ii = i;
String s = ii.toString();
//2.String类的valueOf方法
//这是一个静态方法,几乎可以把各种类型转换为字符串
String s1 = String.valueOf(i);
//注意区别包装类的valueOf方法,那个也是静态方法,返回的是包装类型。
Integer integer = Integer.valueOf(ii);
//3.加一个“”来实现自动转型
String ss = i+"";
//4.如果是数组的话,通过构造方法可以直接把数组转换为字符串
int[] ints = new int[3];
String string = new String(String.valueOf(ints));
}
2.3.5 String 转换成 8种数据类型
public static void main(String[] args) {
//String转换为对应的八种基本数据类型
String str="100";
System.out.println("byte: "+Byte.parseByte(str)); // byte: 100
System.out.println("Short: "+Short.parseShort(str)); // Short: 100
System.out.println("Integer: "+Integer.parseInt(str)); // Integer: 100
System.out.println("Long: "+Long.parseLong(str)); // Long: 100
char[] arr = "string".toCharArray();
System.out.println(Arrays.toString(arr)); // [s, t, r, i, n, g]
System.out.println("float: "+Float.parseFloat(str)); // float: 100.0
System.out.println("double: "+Double.parseDouble(str)); // double: 100.0
System.out.println("boolean: "+Boolean.parseBoolean(str)); // boolean: false
}