一.选择流程控制语句
1.顺序结构
程序自上而下,依次执行2.if语句
1)if语句的格式1 if(关系表达式){ 语句体; } public class IfDemo1 { public static void main(String[] args) { System.out.println("aaa"); if(true){ System.out.println("这是if语句体"); } System.out.println("bbb"); } } ①条件表达式如果是true ,则执行语句体, 如果条件表达式为false ,则不执行语句体.2)if语句的格式2
if(关系表达式){ 语句体1; } else { 语句体2; } 如果关系表达式是true,执行语句体1; 如果关系表达式为false,执行语句体2; 注意: 不管怎么样,都会执行其中一条语句.3)if语句的格式3
if(条件表达式1){ 语句体1; } else if(条件表达式2){ 语句体2; } else if(条件表达式3){ 语句体3; } ... }else { 语句体n+1; } if语句格式3从上向下依次判断,满足哪个就执行哪个语句体的内容,如果都不满足,则执行else的内容其他情况
if(条件表达式1){ 语句体1; } else if(条件表达式2){ 语句体2; } else if(条件表达式3){ 语句体3; } 如果所有的条件表达式都为false,则所有语句体都不执行.2.switch语句
格式: switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n; break; } 表达式: 可以是什么值 byte short int char JDK1.5 可以用枚举 JDK1.7 字符串 执行流程: 举例: switch(123){ case 1: 语句体1; break; case 123: 语句体2; break; ... default: 语句体n; break; } 拿着表达式123去和case中的值进行匹配,如果匹配上,就执行该case中的语句体. 如果都没匹配到则执行default中的语句. ***注意事项: switch后的表达式可以是变量,但是case后的值不能是变量,只能是常量.case穿透
public class switchTest { public static void main(String[] args) { /*int a = 10; int y = 0; switch(a){ default: y++; //y = 1; case 1: 0 0 0 1 2 3 y++; // y = 2; 执行顺序:1–2–3–d–1–2 case 2: y++; // y = 3; break; case 3: y++; } System.out.println(y);*/y=3;
二.循环语句
1.for循环 作用:能够重读的执行某一段代码,提高了代码的效率. 格式: for(初始化语句;判断条件; 循环控制语句){ 循环体语句; } 举例: 在控制台输出10句HelloWorld for(int i = 0; i < 10 ; i++){ System.out.println("HelloWorld"); } 执行流程: 先执行初始化语句(int i = 0) 接下来执行 判断条件( i<10) ; 再执行循环体语句(System.out.println("HelloWorld");) 最后执行循环控制语句(i++); 然后再判断,如果为true就执行循环体...依次循环执行 注意: 初始化语句只执行依次. 特殊用法:(理解) for (int i = 1,y = 0; i <= 10 && y <=100; i++,y++) { System.out.println(i); }*2.使用whlie循环打印一个四行五列的星星
如下: ***** ***** ***** ***** 分析: System.out.println(); 换行 System.out.print(); 打印不换行 使用循环嵌套来做 */ public class WhlieDemo1 { public static void main(String[] args) { for(int i = 1 ; i <= 4 ;i++){ //控制行数, 一共有多少行 for (int j = 1; j <= 5; j++) { //该循环只打印 * 不换行 System.out.print("*"); } System.out.println(); //只换行 } System.out.println("------------------------"); int i = 1; while(i <= 4){ //控制一共有多少行 int j = 1; while(j <= 5){ System.out.print("*"); j++; } System.out.println(); i++; } } }2.while 循环
格式: while(条件判断语句){ 循环体语句; } 扩展格式: 初始化语句; while(条件判断语句){ 循环体语句; 控制循环语句; }do..while循环
格式: 初始化语句; do { 循环体语句; 控制循环语句; }while(判断条件); 举例: int i = 0; do { System.out.println("abc"); i++; }while(i<10);4.三种循环的区别
for、while 和 do...while() 的区别: for、while 先判断,如果为true再执行循环语句; do...while() 先执行,再判断.for循环和while循环的区别:
for(int i = 0; i < 10; i++){ //i的作用范围是 () 和 {} System.out.println(i); } System.out.println(i); //for循环这个是有误的 int i = 0; while(i < 10){ System.out.println(i); i++; } System.out.println(i); // while循环这个是正确的 注意: for循环和while循环是能相互切换的 int i = 0; for(; i<10 ;){ System.out.println(i); i++; } System.out.println(i); // while循环这个是正确的三: 循环控制语句(break continue)
1.break 使用场景: switch 和 循环语句中 使用在switch中作用是退出switch语句; 使用在循环语句中结束循环. 2.continue 使用场景: 循环语句中 作用: 结束本次循环,继续下一次循环.