1. 标识符:
1.2 硬性要求:
-
必须由数字、字母、下划线_、美元符号$组成。
-
数字不能开头
-
不能是关键字
-
严格区分大小写
1.3 小驼峰命名法(适用于变量名与方法名):
如果是一个单词,全小写
如果是多个单词,从第二个单词开始的首字母要大写,如fristName
1.4 大驼峰命名法(适用于类名):
如果是一个单词,首字母大写
如果是多个单词,每个首字母都要大写,如HelloWorld
起名时要做到见名知意
2. 变量
2.1 变量的定义:
变量就是程序存储指定类型数据的容器,且只能存一个值
2.2 变量的三要素
三要素:变量名;变量类型(数据类型);作用域(生命周期)/变量值
2.3 变量的分类
- 局部变量:定义在方法中,语句块{ }内的变量
只声明不赋值没有默认值
- 成员变量:定义在类中,方法外的变量
只声明不赋值存在默认值
3. 数据类型
3.1 基本数据类型
计算机基本存储单位 : 字节 bit比特位 (最小存储单元)--> 1byte字节 = 8bit位
3.1.1 整形:整数
字节型 | byte | 1byte = 8bit | [-128,127] |
短整型 | short | 2byte = 16bit | [-32768,32767] |
整形 | int | 4byte = 32bit | +-21亿 |
长整型 | long | 8byte | 非常大 |
在java中整数的字面值常量默认为int类型
在为long类型数据赋值的时候,需要在数据的后面添加L(推荐)|l
3.1.2 浮点型
float(4个字节) | 精确7位 |
double(8个字节) | 精确15位 |
在java中小数的字面常量值默认为double类型
在为float类型赋值的时候,需要在数据的后面添加F|f
在java浮点类型的数据不要大量的进行运算,可能会造成数据的不精确
3.1.3 字符型
char | 2byte |
3.1.4 布尔型
boolean | 1字节(1位有效) |
3.2 引用数据类型
class | 数组[ ] | 接口(interface) |
Tips: ASCII码表中字符'A' , 'a' , 0 所对应的十进制数是多少
'A' 65 'a' 97 '0' 48
4 转义字符
\t : 制表符。一个制表符位默认8个空格,如果制表符位前面出现其他字符,检测前面的字符是否满制表符位的整数倍,如果不满补齐,如果满就重新开辟
\n : 让光标从这一行的行尾换到下一行的行首
\b : 退格 光标回退一格
5 数据类型转换
标准赋值:对应类型的数据赋值给相应类型的数据
前后类型不一致涉及到类型转换问题
- 布尔类型的不参与数据转换
- 自动类型提升:小 ——> 大
- 强制类型转换:大 ====> 小
Tips:当表达式中存在多种数据类型参与运算,最终结果的类型为参与运算的最大数据类型
参与运算的最大类型<int类型,最终会提升成为int类型
当想要为byte,short,char赋值的时候,将int类型的常量只要在其范围内就能成功赋值
当字符类型参与运算,将字符转为十进制整数再运算
注意:强制转换时如超出所转换类型的最大值,因为整个数据范围是成圆环状环绕的,按照超出部分依次补齐。例子:byte b = (byte)130; sout(b)最终结果是 -126,因为byte的取值范围是[-128,127],正数最多只能取到127,所以虚拟机会继续向圆环负方向补齐(130-127)个数,最后的结果就是-126。
Java中基本数据类型转换的规则
1、boolean类型不能转换
2、如果整数型字面量没有超出byte、short、char取值范围的话,可以直接将整数赋值给byte、 short、char类型的变量。
3、自动类型转换:小容量向大容量转换byte<short(char)<int<long<float<double。其中short和 char都各占两个字节,但是char可以表示更大的正整数。
4、强制类型转换:大容量转换成小容量,编写时必须添加“强制类型转换符”。但运行时可能出 现精度损失
5、byte、short、char类型混合运算时,先各自转换成int类型再运算。
6、多种数据类型混合运算时,先各自转换成容量最大的那一种再做运算。
6 自增自减运算符
参与计算时:a++ ——> 先用再加
++a ——> 先加再用
//例子
int k=20;
int j=8;
int totle = k++ + j-- + --j + ++k + k++ + j++ + k-- + --k + j++;
System.out.println("k="+k+",j="+j+",totle="+totle);
变化过程:
k: 20 21 22 23 22 21
j: 8 7 6 7 8
t: 20 + 8 + 6 + 22 + 22 + 6 + 23 + 21 + 7 = 20+14+44+46+13=135