3.1运算符与表达式
1. 自加或者自减符号(++X or --X)的使用 :
- 单目运算符号,可放在操作符号前面或者放在操作符号后面
- 放在前面表示使用x之前先对其进行自加操作,放后面代表先使用x再对其进行自加操作
例子:如果x=5,则对于“y=++x” y的值是6,而对于"y=x++" y的值是5
2. 算术混合运算的精度:
1.牢记精度的从低至高的排列顺序: byte——short——char——int——long——float——double
2.混合运算按表达式中最高精度来计算,但是表达式中最高精度低于int型整数,则按int计算
3. Java不允许把超过byte(-2^7--2^7-1)、short(-2^15--2^15-1)、char(0--65535)的取值范 围的常量算术表达式赋给byte、short、char型变量
4.当赋值号右边有变量,因为编译器只会检查其的变量类型,不检查变量的值,"byte y =1 " "byte z= 97+y",表达式结果是int型精度,此时编译器会提示不兼容类型。可修改为byte z= (byte) (97+y);
3.关系运算符与关系表达式:
- 注意关系运算符号的等于是‘==’
- 了解几个逻辑运算符:&& 与,||或,!非(结合方向从右到左)。
- 关系运算符的优先级>逻辑运算符
- 缩略运算符:+=(b+=120等同于b=(byte) (b+120)),*=、/=、-=
4.instanceof运算符
判断一个对象是否属于一个类boolean result = p instanceof Student; 它的返回值是一个布尔型 的。
5.书p44页的运算符优先级和结合性
3.2语句概述
1.if语句、if-else语句、if-else if-else语句、for语句、while和dowhile语句的结构类型
2.switch开关语句:
如果一个语句块没有break则继续接下来的代码运行,如果有则会退出;
如果都没有则会执行default语句块,该语句块可选择执行。
switch(表达式){
case 常量值1:
若干语句
break;
case 常量值2:
若干语句
break;
case 常量值3:
若干语句
break;
case 常量值n:
若干语句
break;
default:
若干语句
}
3.for语句与遍历数组
for(声明循环变量:数组名字){
........
}
不可以使用声明过的变量!!
以下一些关于这个单元的小例子:
EXAMPLE1
public class Test {
public static void main(String args[]) {
boolean boo = true;
int a=1;
if(boo=true) {
System.out.println("hello");
System.out.println("你好");
}
if(boo==true) {
System.out.println("hello");
System.out.println("你好");
}
}
}
注意区分if(boo=true)和if(boo==true)的区别,第一个是先给boo赋值为true然后再判断boo的值是否为真,第二个是关系运算符判断boo是否为true