目录
if...else if...else..如果..否则如果..否则..
1、选择结构if
基本的if选择结构
if选择结构是根据条件判断结果选择不同的处理
if ( 条件 ) {
//代码块
}
结果必须是布尔值
使用复杂条件的if选择结构
结合运算符的优先级编写条件:
1、最高的优先级:( )
2、最低的优先级:=
3、优先级:!> 算术运算符 > 关系运算符 > && > ||
4、复杂条件使用括号提高可读性
使用if-else选择结构
使用if-else选择结构实现:
如果张浩Java考试成绩大于90分,老师就奖励他一个iPhone6s 否则老师就罚他蹲马步
if (score > 90) {
System.out.println("老师说:不错,奖励一iPhone6s!");
}
if (score <= 90) {
System.out.println("老师说:惩罚蹲5分钟马步!");
}
if ( 条件 ) {
//代码块1
}else {
//代码块2
}
只有一条语句时,建议不省略{ }
if...else if...else..如果..否则如果..否则..
语法:
if(条件){
}else if(条件){
}else{
}
注意:
else if可以写多个
else 可以省略
注意条件的顺序
嵌套if选择结构
嵌套if控制语句可以通过外层语句和内层语句的协作,增强程序的灵活性
if(条件1) {
if(条件2) {
代码块1
} else {
代码块2
}
} else {
代码块3
}
在字符串进行比较时:
==:比较内存地址
equals:比较字符串的值
null 代表空(表示没有在堆中开辟空间)
2、使用switch选择结构(等值判断)
缺点:结构复杂,啰嗦 特点:条件为等值判断
switch选择结构语法
switch (表达式,变量) {
case 常量 1://Case后的常量值不能相同
语句;
break;//如果需要每个case执行完后跳出,在每个case后不要忘记写break;
case 常量 2:
语句;
break;
…
default://default块顺序可以变动,但要注意其执行顺序。通常,default块放在末尾,也可以省略
语句;
}
//表达式 int、short、byte、char、枚举类型、String
注意:
语句后添加break;
代码块的顺序
3、switch与多重if
相同点 都是用来处理多分支条件的结构 不同点 1、switch选择结构: 只能处理等值条件判断的情况 2、多重if选择结构: 没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况
4、总结
if选择结构,包括以下形式
基本if选择结构:可以处理单一或组合条件的情况 if-else选择结构:可以处理简单的条件分支情况 多重if选择结构:可以处理分段的条件分支情况 嵌套if选择结构:可以处理复杂的条件分支情况
switch选择结构
*多重分支并且条件判断是等值判断的情况
变量作用域
以离最近大括号为准
二进制转换
int num = 50;
// num%2 50%2 0 50/2
// 25%2 1 25/2 12.5
// 12%2 0 12/2 6
// 6%2 0 6/2 3
// 3%2 1 3/2 1.5
// 1%2 1 1/2
110010
//将十进制转换为二进制
String s = Integer.toBinaryString(num);
System.out.println(s);
//110010
String bs = "110010";
//将二进制转换为十进制
int d = Integer.parseInt(bs,2);
System.out.print(d);