流程控制语句
一 if判断
1.if()可以使用三目运算符 判断条件 ? 表达式1 : 表达式2
else{
}
2.if (判断条件)多个条件判断
else if{
执行语句
}
3.if(){
}
条件单一,不需要else时
流程:先走()的判断条件,执行满足条件的相应语句。不满足则跳出,需要注意else后不可以添加判断条件
例如:
ArrayList<Integer> arr4=new ArrayList<Integer>();
arr4.add(5);
arr4.add(10);
arr4.add(15);
System.out.println("请输入要修改的行数"); Scanner sc=new Scanner(System.in); int b=sc.nextInt(); System.out.println("请输入要修改的数量"); int c=sc.nextInt(); if(b==1){ System.out.println("请输入要修改的数量"); int c=sc.nextInt(); arr4.set(b-1,c); } else if(b==2){ System.out.println("请输入要修改的数量"); int c=sc.nextInt(); arr4.set(b-1,c); } else if(b==3){ System.out.println("请输入要修改的数量"); int c=sc.nextInt(); arr4.set(b-1,c); }
二、switch控制语句 ,他与if else相似,但不同点在于switch只能判断某个表达式的值,如判断今天是否是周一等
没判断一个值就需要用break结束,防止无限循环,可以利用break不停止的效果来判断连续的相同值,如周一到周五是工作日
基本结构:
switch(需要传递的值){
case 1:周一
System.out.println("工作日");
break;
case2:周二
System.out.println("工作日");
break;
...
case7:周日
System.out.println("休息日");
break;
default:
System.out.println("错误");
}
三、for循环 它的意义在于遍历每一个值来完成打印或者运算的功能
//① ② ③ 1、① ② ④ 2、③ ② ④ 3、③不满足②所以跳出循环 //1 2 3 4 5 6 7 8 9行
for (int i=1;i<=9;i++){
//④
① ② ③
for(int j=1;j<=i;j++){ //1 // 1 2 // 123...1 2 3 4 5 6 7 8 9 //10不满足
④
System.out.print(i+"*"+j+"="+(j*i)+" ");
}
System.out.println(i);
}
当for循环是单独嵌套时,执行的是嘴上流程,如果嵌套循环,则里外一起循环,里面走的是①②④ ③因为③增加1不满足j<=i则返回外面,再以此类推,最终以外面判断条件不满足结束。
较难案例:它在于在外面定义一个计数器,通过每一次循环来记录每一次的数值,最终打印循环结束后的所有循环合z。 for的()中x++位置可以放算是运算符的加减乘除等都可
int z=0; for(double x=0.01;x<=8848;x=x*2) { z=z+1; } System.out.println(z);
四、while循环 while循环与for循环的区别在于while大都执行不确定次数的循环,如死循环
正常打印1-10
int i=0;
while(i<=10){
i++
System.out.println(i);
}
打印1 2 3...10;
死循环则是:
int a=0;
int z=0.01;
while(trun){
if(z<8848){
z=z*2;
a=a+1;
}else{
break;}
System.out.println(a);
}
20次折叠
do while
先打印后判断
打印1-4
int a=0;
int x = 1; // 定义变量x,初始值为1
do {
System.out.println("x = " + x); // 打印x的值
x++; // 将x的值自增
} while (x <= 4); // 循环条件
五、break和continue
break是跳出全部循环,continue是跳出当前循环
如死循环用break跳出,continue当
编写程序,打印1到100之内的整数,但数字中包含7的要跳过 for(int q=1;q<=100;q++) { //int b=sc.nextInt(100)+1; if(q%10==7|q/10==7){ continue; } System.out.println(q); }