一、运算符
1.算术运算符:
(1) 进行混合运算的时候:byte,short,char之间不会相互转换,都会自动提升为int类型 。其他类型进行混合运算的时候都是小的数据类型提升为大的:byte,short,char—int—long—float--double,
float比long大:
(2)整数被0除产生异常,浮点数被0除得到无穷大或者NaN
(3)自加(++)、自 减(--)
Int b=++a;//相当于,a=a+1然后赋值给b
Int b=a++;//相当于,b=a然后再计算a=a+1
(4)左加(+=)、左减(-=)、左除(/=)、左取模(%=)
2.关系运算符: &&(逻辑与)、||(逻辑或)、!(非)
3.三元运算符:三元运算符:条件表达式?表达式1:表达式2 //当条件表达式为真时执行表达式1,反之执行表达式2
4.运算级别判定:右结合运算是从右到左进行运算的,a+=b+=c,等价于a+=(b+=c);&&优先级高于||
二、流程控制
1.顺序控制:从上到下,从左至右
2.选择控制:单分支、双分支、多分支
(1)if语句:
If判断语句之中,语句体外面那一层的大括号可以省略;多重if语句中,如果满足某一个条件后,立刻退出该控制,即使下面还有满足的判断语句。区别于switch
(2)Switch语句:
Switch中可以使用的数据类型主要是:byte,short,int,char,enum(枚举),在1.7版本之后可以使用String了。并且case后面只能是常量或者常量表达式,不能放置变量(即使变量是已知的)
运行之后,会打印出1和2;如果i=4,则打印出default和0
3.循环控制:
(1)循环体中如果只有一条语句,最外层的大括号可以省去,多条则不行
Int i,j;是合法的编译
For (int i=5,j=1;i<…)是正确的
For (i=5, int j=1;i<…)是错误的
Int i,j
For (i=5, j=1;i<…)是正确的
(2)常见死循环
While(true)
{
}
For( ; ;)
{
}
(3)break、continue、return三者的区别,(continue是终止本次循环,开始下一次循环)