标识符
- 标识符由字母、数字、下划线 _、美元符号 $ 组成,首字符不能是数字。
- 不能把 Java 关键字作为标识符。
- 标识符没有长度限制。
- 标识符对大小写敏感(在计算机领域,“对大小写敏感”就是指“会对大写或小写英文进行区分”)
一些隐藏的你需要知道的规则
- 对于变量和方法名,建议第一个单词应以小写字母作为开头,后面的每个单词则都要以大写字母开头,例如 getName、setAge。
- 对于类名,它和变量名、方法名的区别在于,第一个单词的首字母也需要大写,如果类名称中包含单词缩写,则这个缩写词的每个字母均应大写,例如 XMLModule(XML 是几个单词的缩写)。另外,由于类是设计用来代表对象的,所以在命名类时应尽量选择名词。
- 对于常量(即不可变的量)标识符应该都使用大写字母,并且指出该常量完整的含义。如果一个常量名称由多个单词组成,则应该用下划线来分割这些单词,例如 MAX_VALUE。
- 对于包的名字,通常用小写
关键字
不能用作变量名、方法名、类名和包名,以下都是关键字
变量
可以改变的值,被用于存储程序中后面要用到的值
格式为
type varName [=value];
数据类型 变量名 【=变量值】
type varName:根据数据类型向内存申请一块空间
=value 相当于把值放到这个内存空间中
常量
在 Java 语言中,利用 final 关键字来定义 Java 常量,其本质为值不可变的变量。例如 final int a = 0;
变量类型
基本数据类型又分为 3 类 8 种,3 类分别是数值型、字符型和布尔型,数值型又可细分。下表列出了不同的基本数据类型所占的字节数、位数和使用说明
取值范围怎么来的呢?我们知道,计算机只存0和1,比如int是8字节,一个字节占8位,一个int也就是32位,它的范围就是32个0到32个1,由于存在一个整数0,所以整数需要-1。
注意:
1.float定义时在最后加上f或者F
float floatNum = 3.14F;
Java 使用 Unicode 编码,一个 Unicode 编码占 2 个字节,一个汉字也是占 2 个字节,所以 Java中字符型变量可以存放一个汉字
字符串不属于基本数据类型
字符类型转换
小字节转大字节被允许,byte、short、char 参与运算时会被自动转换为 int 类型
反之编译不通过,需要我们手写强制转换,但可能造成精度降低或溢出,使用时需要格外注意。
格式为:数据类型 变量 = (目标类型) 变量/数据;
例如
int b = 0;
char a = (char) b;
有多种类型的数据混合运算时,系统首先自动地将参与运算的变量或字面值常量转换成容量最大的数据类型,然后再进行计算
例如:
byte + short = int
byte + byte = int
byte + int = int
short + short = int
int + float = float
在进行int及以下的运算时,结果都是int 有float,结果就是float
成员变量和局部变量
成员变量:
定义在类的内部、方法的外部。 作用域从变量定义位置起到类结束
局部变量:
方法内部(含语句块)定义的变量 。作用域从变量定义位置起到方法(含语句块)结束
对于 Java 而言,类的外面不能有变量的声明
运算符
Java 语言支持如下运算符。
算术运算符:+、-、*、/、%、++、--。
关系运算符:>、<、>=、<=、==、!=。
赋值运算符:=、+=、-=、*=、/= 等。
逻辑运算符:!、&&、|| 等。
位运算符:~、&、|、^、>>、<<、>>>(无符号右移)。
算术运算符
单目运算符:+(取正)、-(取负)、++(自增 1)、--(自减 1)。
双目运算符:+、-、*、/、%(取余)。
三目运算符:(表达式 1)?(表达式 2):(表达式 3),
当表达式 1 的结果为真时,整个运算的结果为表达式 2,否则为表达式 3
如c=a==b?a:b 如果a等于b,c就等于a,否则等于b
逻辑运算符
在 Java 语言中有 3 种逻辑运算符,它们是逻辑非(用符号“!”表示)、逻辑与(用符号“&&”表示)和逻辑或(用符号“||”表示)。
&&:全true才true
||:有一个为true就为true
!:与原来相反
表达式
表达式是符合一定语法规则的运算符和操作数的组合。
运算符优先级如下(运算优先级越高越先执行)