- java中的运算符
- 赋值运算符 为变量赋值
- 算数运算符
- +
- –
- *
- /
- %
- 关系运算符 比较运算符
- > < >= <= == !=
- 程序中的关系运算表达式 不是结论 而是推论 可能成立 也可能不成立
- 关系运算的结果 是 一个用于表示 推论成立与否的数据值 布尔类型的值
- 布尔类型
- boolean boo; 声明一个布尔类型的变量
- boolean boo=true;
- boolean boo=false;
- boolean boo=num1==num2;
- 布尔类型的存放值 只有 true 和 false
- 布尔类型是一种非数值型数据
- boolean boo; 声明一个布尔类型的变量
- 逻辑运算符
- && 与 关联两个或多个关系运算表达式 只有 所有的表达式均成立的情况下 整体运算结果才为真
- || 或 关联两个或多个关系运算表达式 只要 有一个 表达式成立 则 整体运算结果为真
- ! 非 用于对原有的推断结果取反
- 各种运算的优先级问题
- () 优先级最高 多重小括号 按从内到外的顺序控制优先级
- !
- 算数运算 先乘除 后 加减 关系运算
- &&
- ||
- 赋值运算符优先级最低
- 条件结构
- 二分支条件结构 处理简单的条件问题
if(关系运算或 逻辑运算){
//条件成立时执行的代码块
}else{ //if设置条件的反条件
//条件不成立时执行的代码块
}
- 嵌套条件结构 处理多组条件判断的问题
- 二分支条件结构 处理简单的条件问题
if(第一组条件的判断) {
if(第二组条件判断 ){
//第一组条件和第二组条件都成立 执行的代码块
}else{
//第一组条件成立 而第二组条件不成立 执行的代码块
}
}else{
if(第二组条件判断){
//第一组条件不成立 而第二组条件成立时执行的代码块
}else{
//两组条件都不成立时执行的代码块
}
}
-
- 多重条件结构 处理连续多区间判断的问题
if(条件1){
//条件1成立时执行的代码块
}else if(条件2){
//条件1不成立 同时 条件2成立时 执行的代码块
}else{
//条件2不成立时执行的代码块
}
if 必须出现1次
else if 可以出现 0-N次
else 出现0次或1次
-
- switch选择结构
switch(参与等值比较的变量){
case 比较值1:
比较成立时执行的代码段
break;
case 比较值2:
比较成立时执行的代码段
break;
……
default:
所有case均不成立时执行的代码段
break;
}
注意: 1. 在switch语法中 小阔号能够支持的数据类型是有限制的 jdk1.7及以下版本 只支持 byte short int char jdk1.8版本以上多支持一种String 类型
注意: 2. switch语句块中 case 和 default的顺序可以随意交换 单不能出现重复的case值 default可以不出现
注意:3. break如果省略 当前 case执行完自己的操作后 会贯穿执行下一个case的操作 直到读到break 或走完所有的case为止 但贯穿效果并非错误 合理利用可以提高开发效率
- 累加 自增 单与 单或
- 累加运算
- int num=10; num=num+10; num+=10;
- 在累加时累加的数据为1
- 累加运算
int i =10;
i=i+1; i+=1; i++;(++i;)
-
-
- i++ 与 ++i的区别
- i++ 先进行本行代码中的其他操作 再做自增 i--
- ++i 先自增 再进行本行代码中的其他操作 --i
- &&和 & ||和|的区别
- && || 带有短路效果 如果左侧的表达式已经可以决定整个表达式的最终结果 右边的表达式将不再运行
- & | 没有短路效果 无论左侧表达式是否能决定最终结构 右边的表达式都必须执行
- i++ 与 ++i的区别
-
- 随机数的生成