流程控制部分笔记

it2025-04-02  10

流程控制

用户交互Scanner

java.util.Scanner,可以通过scanner类来通过用户的输入

基本语法:

Scanner s = new Scanner(System.in);

通过Scanner类的next()与nextLine()方法获得输入的字符串,在读取前面一般使用hasNext()和hasNextLine()来判断是否还有输入的数据

凡是IO流的类如果不关闭会一直占用资源,要关掉*.scanner.close()*

package base; import java.util.Scanner; public class demo1 { public static void main(String[] args) { //创建一个扫描器对象,用于键盘接收数据 Scanner scanner =new Scanner(System.in); System.out.println("使用next接收方式"); //判断用户有没有输字符串 if(scanner.hasNext()){ String str = scanner.next();//用这个来接收用户的输入 System.out.println("输入的内容为:"+str); } scanner.close(); } }

next()与nextLine()的区别

next:

一定要读取到有效字符后才可以结束输入对输入有效字符前的遇到的空白,会直接去掉有效字符后的空白会被当作分割符next()不能得到带有空格的字符串

nextLine:

以回车作为结束符可以得到空白

Scanner的进阶使用

数字求和以及平均值

package base; import java.util.Scanner; public class demo7 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //求和 double sum =0 ; //计算输入了多少个数字 int m = 0; while(scanner.hasNextDouble()){ double x = scanner.nextDouble(); // m++; sum+=x; System.out.println("你输入了第"+m+"数据\n当前结果为"+sum); } double aver = (sum/m); System.out.println("aver ="+aver); System.out.println("sum ="+sum); scanner.close(); } }

顺序结构

就很简单。。。

任何一种算法都离不开的基本结构

选择结构

if单选择

if(bool){ // }

if双选择

if多选择

if (score==100){ System.out.println("满分!"); }else if (score>=90){ System.out.println("A"); }else if (score>=80){ System.out.println("b"); }else if (score>=70){ System.out.println("c"); }else{ System.out.println("不合格"); }

if的嵌套

switch多选择

switch语句中的变量可以是byte,short,int ,char

switch (grade){ case'A': System.out.println("braliant"); break; case'B': System.out.println("good"); break; case'C': System.out.println("middle"); //break; case'D': System.out.println("other"); break; default: System.out.println("bad"); }

从JDK7开始也可以支持字符串了

循环结构

while循环

先判断后执行

do…while循环

至少循环一次,先执行后判断

for循环

快捷键:100.for表示自动生成for(i=0;i<100;i++)

增强for循环:

public static void main(String[] args) { int [] numbers ={1,2,3,4,5}; //遍历数组元素 for (int x:numbers){ System.out.println(x); } }

break& continue

break:强制退出循环

continue:跳过某一次循环,即跳过循环体中尚未执行的部分。进入下一次循环的判定中

goto:

Java本身没有goto关键字,但是可以用标签

public static void main(String[] args) { int count =0; outer:for(int i=101;i<150;i++){//这是一个标签 for(int j=2;j<i/2;j++){ if(i%j==0){ continue outer;//回到标签 } } System.out.println(i+" "); } }
最新回复(0)