判断语句if,switch和循环语句while,do while ,for
1.判断语句if和switch的异同
所有switch能实现的 if都可以实现
反之if能实现的,switch不一定能实现。
switch只能做等值判断(比如月份等由有限个值组成),if可以做区间判断(如取值范围等由无限个值组成的)
if的表现形式
if (判断){
System.out.println("输出");
}else if(){
}
switch的表现形式
注意:switch中的表达式只能放byte short int char String类型的数据
重要:当多个case的输出值相同时,可以只保留最后一个case的输出和break,效果不变
switch (day){
case 1:
case 2:
case 3:
case 4:
System.out.println("好好工作,加油");
break;
}
易错:switch里的case击穿问题,原因是在case中没有加入break停止符,导致代码输出所有值,不能自动停止.
2.循环语句while,do while ,for使用的区别
while和do while的流程图如下:
从中可以看出:while先判断在执行;do while则是先执行再判断.当初始值不满足循环条件的时候,while 循环一次都不会操作,do While循环不管在什么情况下都至少执行一次。
for循环是我们使用最频繁的循环语句
表现形式如下:
for (起始值; 循环条件; 循环迭代) {
循环操作
}
没有起始值就不能运行;没有循环条件和循环迭代就会陷入死循环.
三种循环实例比较:
分别使用while , do…while , for循环完成: 计算100内偶数之和
while
public class T1dowhile {
public static void main(String[] args) {
int num=0,i=0;
do {
if (i%2==0){
num+=i;
}
i++;
}while (i<=100);{
System.out.println("100以内的偶数和为:" + num);
}
}
}
do while
public class T1dowhile {
public static void main(String[] args) {
int num=0,i=0;
do {
if (i%2==0){
num+=i;
}
i++;
}while (i<=100);{
System.out.println("100以内的偶数和为:" + num);
}
}
}
for
public class T1for {
public static void main(String[] args) {
int num=0;
for (int i = 0; i <= 100; i++) {
if (i%2==0){
num+=i;
}
}
System.out.println("100以内的偶数和为:" + num);
}
}
小知识点:
1.当一个变量在for循环里面首次声明,则当在循环外引用时就会报错,这就是变量的作用域
2.continue跳过循环体中剩余的语句而执行下一次循环,只能用在循环里
3.break 特点
- .break语句用于终止某个循环,使程序跳到循环块外的下一条语句
- .在循环中位于break后的语句将不再执行
- .不仅可以用在循环中,也可以用在其他语句中