Java基础——流程控制

来源:互联网 发布:switch用法c语言 编辑:程序博客网 时间:2024/06/07 09:34

Java基础——流程控制

补充:

Ⅰ,局部变量

定义:在函数内部定义的变量

特点:

①先赋值后使用

②作用范围:从定义这个变量开始到定义这个变量的代码块结束

③在重合范围内,不允许两个局部变量命名发生冲突

 

package p3;public class TestLocalVar{public static void main (String [] args){int a;a=10;//先赋值后使用,如果不把10赋值给a,后面的a将无法使用{int b=10;System.out.println(b);//作用范围:从定义这个变量开始到定义这个变量的代码块结束,在这个代码块之外,这个b就没用了}System.out.println(a);}{int b=19;System.out.println(b);}{int b=18;System.out.println(b);//在重合范围内,不允许两个局部变量命名发生冲突,这两个b不在同一代码块}}


Ⅱ,读入数据

Java语言的工具类:java.util.Scanner

package p3;import java.util.Scanner;public class TestScanner{public static void main(String []args){Scanner sc= new Scanner(System.in); //创建一个Scanner对象,为读入数据做准备System.out.println("请输入一个字符串:");String str=sc.nextLine();//读入字符串System.out.println("请输入一个整数:");int i=sc.nextInt();//读入整数System.out.println("请输入一个小数:");double d=sc.nextDouble();//读入浮点数System.out.println(str+i*d);}}


运行时可以在控制台上输入数据,结果如下

 

 

一、条件分支流程

条件满足就执行,条件不满足不执行

 

1,Ⅰ,if(布尔表达式){ 

代码块

}

布尔表达式为true,执行代码块的代码

布尔表达式为false,不执行代码块的代码

Ⅱ,if(布尔表达式){ 

代码块

}else{

代码块

}

布尔表达式为true,执行代码块①的代码

布尔表达式为false,执行代码块②的代码

代码块①②不会同时执行

Ⅲ,if(布尔表达式){ 

代码块

}else if(布尔表达式){

代码块

}else{

代码块


}

示例代码:

package p3;import java.util.Scanner;public class TestIf{public static void main(String []args){System.out.print("请输入一个整数:");Scanner sc=new Scanner(System.in);int i=sc.nextInt();if(i>2){System.out.println(i+"大于2!");}else if(i=2){System.out.println(i+"等于2!");}else{System.out.println(i+"小于2!");}}}

2switch(表达式){

case value1:语句1break

case value2:语句2break

case value3:语句3break

……………………

case valueN:语句Nbreak

default:语句t; break

}

注意:

1default位置不限制。

2switch(表达式),表达式只允许整型表达式byteshortintchar


示例代码:

package p3;import java.util.Scanner;public class TestSwitch{public static void main(String []args){System.out.print("请输入一个1~5的整数:");Scanner sc=new Scanner(System.in);int i=sc.nextInt();switch(i){case 5:System.out.println("优秀!");break;case 4:System.out.println("良好。");break;case 3:System.out.println("及格。");break;case 2:case 1:System.out.println("不及格!");break;default:System.out.println("成绩输入有误!");break;}}}


二、循环流程

1while(布尔表达式){

循环体

}

循环体要执行0~n次,不确定循环


示例代码:

package p3;public class TestWhile{public static void main(String[] args){int i = 0;//初始化初值while(i<=10){//循环条件System.out.println(i);i++;//循环增量,迭代操作}System.out.println("循环结束"+i);}}

2do{

  循环体

}while(条件);

循环体要执行1~n次,不确定循环

示例代码:

package p3;public class TestDoWhile{public static void main(String[] args){int i = 0;//初始化初值do{//循环体System.out.println(i);i++;//循环增量}while(i<=10);//判断条件,作用于下一次循环,判断是否执行下一次}}



3for(①赋值语句;②条件语句;③一般是对循环变量的自加或自减){

④循环体

}

循环顺序①②③④②④③……

优点:1,简洁

   2,适合在确定循环上,事先知道循环几次上使用

共同点:都能完成循环逻辑,但各有优缺点

  示例代码:

package p3;public class TestFor{public static void main(String[] args){for(int i=0;i<=10;i++){System.out.println(i);}int i = 0;for(i=1;i<10;i++){System.out.println(i);}System.out.println("最终值"+i);for(int j=10;j>=0;j--){System.out.println(j);}/*初始化初值,只有在第一次执行循环时运行  int i  = 0;只在{}以内生效循环条件,每次循环体代码执行之前都要判断循环增量,每次循环体代码执行完毕之后才执行迭代操作*/}}


 

4breakcontinue

break跳出循环,循环直接结束

continue跳出本次循环,除跳过之外其他地方正常输出

原创粉丝点击