java基础------控制流程语句
控制流程语句
语句:使用分号分隔的代码就是一个语句
顺序语句:按照代码顺序从上往下执行所有的代码就是顺序语句
判断语句(if)
if判断语句的格式1:适用于一种情况
if(判断的条件){
符合条件执行的代码
}
if判断语句的格式2:适用于两种情况
if(判断的条件){
符合条件执行的代码
}else{
不符合条件执行的代码
}
if判断语句的格式3:适用于多种情况
if(判断的条件1){
符合条件1执行的代码
}else if(判断的条件2){
符合条件2执行的代码
}else if(判断的条件3){
符合条件3执行的代码
}...else{
都不符合上述条件执行的代码
}
判断条件要注意的事项:
1.如果符合条件后面只有一个语句需要执行,那么可以省略大括号,但是不建议省略,因为结构不清晰
2.if语句的判断条件后不能添加分号,否则会影响到执行的结果
class Demo1{ public static void main(String[] args) { int workAge = 2; //格式1: if(workAge>=2){ System.out.println("电话通知你过来面试.."); } //格式2: if(workAge>=2){ //符合条件执行的代码 System.out.println("电话通知你过来面试"); }else{ //如果不符合上述的条件执行的代码 System.out.println("电话通知你不要再投简历了,不收你!!"); } //格式3: int num = 3; if(num==0){ System.out.println("星期天"); }else if(num==1){ System.out.println("星期一"); }else if(num==2){ System.out.println("星期二"); }else if(num==3){ System.out.println("星期三"); }else if(num==4){ System.out.println("星期四"); }else if(num==5){ System.out.println("星期五"); }else if(num==6){ System.out.println("星期六"); }else{ System.out.println("没有对应的星期"); } } }
选择判断语句(switch)
switch选择判断语句的格式:
switch(你的选择){
case 值1:
符合值1执行的代码
break;
case 值2:
符合值2执行的代码
break;
case 值3:
符合值3执行的代码
break;
case 值4:
符合值4执行的代码
break;
.........
default:
你的选择都不符合上述选项时执行的代码
break;
}
switch语句要注意的事项:
1.switch语句使用的变量只能是byte、char、short、int、String和枚举类型
2.case后面跟的数据必须是常量
3.switch语句的停止条件:switch语句一旦匹配上了一个case语句,那么就会执行对应的case中的代码语句,执行完毕之后如果没有遇到break关键字或者是结束switch语句的大括号,那么switch语句就不会在判断,按照代码的顺序从上往下执行所有的代码,直到遇到break关键字或是结束switch语句的大括号为止
4.在switch语句中不管代码的顺序如何,永远都是会先判断case语句,然后没有符合的情况下才会执行default语句
switch语句的优缺点:
优点:switch语句结构清晰
缺点:如果判断条件是一个区间范围的,使用switch操作就非常的麻烦
class Demo2{ public static void main(String[] args){ int option = 3; //定义一个变量存储你的选择 switch(option){ case 1: System.out.println("java"); case 2: System.out.println("C#"); case 3: System.out.println("javascript"); case 4: System.out.println("android"); default: System.out.println("你的选择有误"); } } }
while循环语句
while循环语句的格式:
while(循环的条件){
循环语句
}
while循环语句要注意的事项:
1.while语句一般都是通过一个变量控制其循环的次数
2.while循环语句的循环体如果只有一个语句的时候,可以省略大括号,但是建议不要省略大括号,因为结构不清晰
3.while循环语句的循环条件后不能有分号,否则会影响代码执行的效果
class Demo3 { public static void main(String[] args){ int count = 0; //需求:输出5句的Hello World while(count<5){ System.out.println("Hello World!"); count++; } /* 需求: 计算1+2+3+....+ 100的总和 int num = 1; int sum = 0; //定义一个变量用于保存每次相加的结果 while(num<=100){ sum = sum+num; // sum = 1 num++; } System.out.println("sum = "+ sum); */ /* 需求:计算1-100,7的倍数总和。 int num = 1; int sum = 0; //定义一个变量用于保存每次相加的总和。 while(num<=100){ // num = 1 if(num%7==0){ sum = sum+num; } num++; } System.out.println("总和是:"+ sum); */ } }
do---while循环语句
do---while循环语句的格式:
do{
循环语句
}while(循环的条件);
while循环与do---while循环的区别:
while循环语句是先判断后执行循环语句的;而do---while语句是先执行,后判断,不管条件是否满足,至少会执行一次
class Demo4{ public static void main(String[] args) { //输出5句hello world int count = 0; do { System.out.println("hello world"); count++; }while(count<5); } }
for循环语句
for循环语句的格式:
for(初始化语句;判断语句;循环后的语句){
循环语句
}
for循环语句要注意的事项:
1.for(;;)这种写法是一个死循环语句,相当于while(true)
2.for循环语句的初始化语句只会执行一次,只是在第一次循环的时候执行
3.for循环语句的循环体语句只有一句的时候,可以省略大括号,但是也不建议省略,因为结构不清晰
class Demo5 { public static void main(String[] args) { //输出5句hello world for(int count = 0 ; count<5; count++){ System.out.println("hello world"); } /* 需求: 在控制台上打印一个 五行五列矩形 ***** ***** ***** ***** ***** for(int j = 0 ; j<5 ; j++){ // 控制行数 for(int i = 0 ; i<5 ; i++){ // 控制列数 System.out.print("*"); } // ***** //换行 System.out.println(); } */ /* 需求: 在控制台上打印一个正立的直角三角形 。 * ** *** **** ***** for(int i = 0 ; i< 5 ; i++){ for(int j = 0 ; j<=i ; j++){ //控制列数 System.out.print("*"); } //换行 System.out.println(); } */ /* 需求: 打印一个倒立的直角三角形。 ***** **** *** ** * for(int i = 0 ; i<5; i++){ for (int j = 0 ; j<(5-i) ;j++ ){ System.out.print("*"); } //换行 System.out.println(); } */ /* 需求: 打印一个九九乘法表. for(int i = 1 ; i<=9 ; i++){ for(int j = 1 ; j<=i ; j++){ //控制列数 System.out.print(i+"*"+j+"="+i*j+"\t"); } //换行 System.out.println(); } */ } }
转义字符:特殊字符“\”把其转化成字符的本身输出,那么使用“\”的字符称为转义字符
常见的转义字符:
\b Backspace (退格键)
\t Tab 制表符(制表符的作用就是为了让一列对齐) 一个tab一般等于四个空格。
\n 换行
\r 回车 把光标移动到一行的首位置上。
\\ 反斜杆(\)
\' 单引号(')
\'' 双引号('')
注意:如果是在windows系统上操作文件的时候需要换行,是需要\r\n一起使用的。如果是在其他的操作系统上需要换行,仅需要\n即可。
break:
break适用的范围:只能适用于switch语句或者是循环语句中
break的作用:
1.break用于switch语句的作用是结束一个switch语句
2.break用于循环语句中的作用是结束当前所在的循环语句,可以配合标记使用,标记的命名只需符合标识符的规则即可
class Demo6 { /* break目前位于内层的for循环,如何才能让break作用于外层 的for循环? 可以标记解决 */ public static void main(String[] args) { aaa:for(int j = 0 ; j<3 ; j++){ // j=0 外层for循环 bbb:for(int i = 0 ; i< 2 ; i++){ // i=0 内层for循环 System.out.println("hello world"); // 1 break aaa; } } } }
continue:
continue适用的范围:只能适用于循环语句
continue的作用:continue的作用是跳过本次的循环体内容,执行下一次
continue要注意的事项:
1. 在一种情况下,continue后面不能跟有其他语句,因为是永远都无法执行到。
2. continue 也可以配合标记使用的。
class Demo6 { public static void main(String[] args) { outer:for(int i = 0 ; i<3; i++){ // i= 0; inner:for(int j = 0 ; j<2 ; j++){ System.out.println("hello"); continue outer; } } /* 需求: 计算1-100的偶数总和. int sum = 0 ; for(int num = 1 ; num<=100 ; num++){ if(num%2!=0){ continue; //如果是奇数就跳过本次循环。 } sum = sum+num; } System.out.println("总和:"+ sum); */ } }