第二章:Java语言基础
2.1 标识符的概念
Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
-
所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
-
首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
-
关键字不能用作标识符
-
标识符是大小写敏感的
-
合法标识符举例:age、$salary、_value、__1_value
-
非法标识符举例:123abc、-salary
2.2 变量的概念及分类
-
按被声明的位置划分:
- 局部变量:方法或语句块内部定义的变量
- 成员变量:方法外部、类的内部定义的变量
- 类外面(类对应的大括号外面)不能有变量的声明。
-
按所属的数据类型划分:
- 基本数据类型变量
- 引用数据类型变量
在Java语言中,所有的变量在使用前必须声明
type identifier [ = value][, identifier [= value] …] ;
Java语言支持的变量类型有:
-
类变量:独立于方法之外的变量,用 static 修饰。
-
实例变量:独立于方法之外的变量,不过没有 static 修饰。
-
局部变量:类的方法中的变量。
2.3 常量的概念
常量在程序运行时是不能被修改的。通常使用大写字母表示常量
在 Java 中使用 final 关键字来修饰常量,声明方式和变量类似:
byte、int、long、和short都可以用十进制、16进制以及8进制的方式来表示。
当使用字面量的时候,前缀 0 表示 8 进制,而前缀 0x 代表 16 进制, 例如:
int decimal = 100;
int octal = 0144;
int hexa = 0x64;
2.4 数据类型
-
基本数据类型 4类8种基本数据模型
-
布尔型:Boolean (逻辑型)
-
字符型:char
-
整数型:byte(-128~127)、short、int、long; 默认是0、0、0、0L
-
浮点数型:float、double; 默认是0.0f、0.0d
-
-
引用数据类型
-
在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
-
对象、数组都是引用数据类型。
-
所有引用类型的默认值都是null。
-
一个引用变量可以用来引用任何与之兼容的类型。
- 例如:Person bob = new Person(“bob”);
-
2.5 运算符、表达式、语句、方法、程序结构(同 C 语言)
- 算术运算符
表格中的实例假设整数变量A的值为10,变量B的值为20:
+ 加法 - 相加运算符两侧的值 A + B 等于 30
- 减法 - 左操作数减去右操作数 A – B 等于 - 10
* 乘法 - 相乘操作符两侧的值 A * B等于200
/ 除法 - 左操作数除以右操作数 B / A等于2
% 取余 - 左操作数除以右操作数的余数 B % A等于0
++ 自增: 操作数的值增加1 B++ 或 ++B 等于 21(区别详见下文)
– 自减: 操作数的值减少1 B-- 或 --B 等于 19(区别详见下文)
前缀自增自减法(++a,–a): 先进行自增或者自减运算,再进行表达式运算。
后缀自增自减法(a++,a–): 先进行表达式运算,再进行自增或者自减运算
- 关系运算符
== != > < >= <= 结果为true 或者 false
- 位运算符
Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。 位运算符作用在所有的位上,并且按位运算。
假设a = 60,b = 13;它们的二进制格式表示将如下:
A = 0011 1100
B = 0000 1101
-----------------
A & B = 0000 1100
A | B = 0011 1101
A ^ B = 0011 0001
~A = 1100 0011
’<<‘ 按位左移运算符。左操作数按位左移右操作数指定的位数。
A << 2得到240,即 1111 0000
‘>>’:按位右移运算符。左操作数按位右移右操作数指定的位数。
A >> 2得到15即 1111
- 逻辑运算符
下表列出了逻辑运算符的基本运算,假设布尔变量A为真,变量B为假
短路逻辑运算符 &&:当使用 与逻辑运算符时,在两个操作数都为true时,结果才为true,但是当得到第一个操作为false时,其结果就必定是false,这时候就不会再判断第二个操作了。
(a<4)&&(a++<10);
首先判断 a<4 的结果为 false,则 b 的结果必定是 false,所以不再执行第二个操作 a++<10 的判断,所以 a 的值为 5。
- 赋值运算符
- 其他运算符
条件运算符(?:)
条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。
variable x = (expression) ? value if true : value if false