JAVA流程控制

JAVA流程控制

使用Scanner类输入

public class ScannerTest1 {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接收键盘数据
        Scanner  scanner1=new Scanner(System.in);

        //判断用户有没有输入字符串
        if(scanner1.hasNext()){
            //使用next方式接收
            String str =scanner1.next();
            System.out.println("输出的内容为:"+str);
        }
        //关闭IO流
        scanner1.close();
    }
}

可以输入没有空格的字符串,如果想要输入空格则使用nextLine()

public class ScannerTest1 {
    public static void main(String[] args) {
        //创建一个扫描器对象,用于接收键盘数据
        Scanner  scanner1=new Scanner(System.in);

        //判断用户有没有输入字符串
        if(scanner1.hasNextLine()){
            //使用next方式接收
            String str =scanner1.nextLine();
            System.out.println("输出的内容为:"+str);
        }
        //关闭IO流
        scanner1.close();
    }
}

两者的区别

  • next():
    1. 一定要读取到有效字符后才可以结束输入。
    2. 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
    3. 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
    4. next()不能得到带有空格的字符串。
  • nextLine():
    1. 以Enter为结束符,也就是说nextLine()方法返回的是输入回车以前的所有字符。
    2. 可以获得空白。

顺序结构

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

if选择结构

if(判断条件){要做的事}else{要做的事}

switch多选择结构

示例:

import java.util.Scanner;

public class SwitchTest1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int i=0;
        System.out.println("请输入一个整数:");
        i=scanner.nextInt();
        switch(i){
            case 1:
                System.out.println("输入的是数字1");
                break;
            case 2:
                System.out.println("输入的是数字2");
                break;
            default:
                System.out.println("输入的不是数字1也不是数字2");
        }
        scanner.close();
    }
}

switch语句中的变量类型可以是:

  • byte、short、int或者char
  • 从Java SE 7 开始,支持字符串String类型(通过反编译)
  • 同时case标签必须为字符串常量或字面量

while循环

while(布尔表达式)

​ {//循环内容}

  • 只要布尔表达式为true,循环就会一直执行下去。
  • 大多数情况会让循环停止下来,需要一个让表达式失效的方式来结束循环
  • 少部分情况需要循环一直执行,比如服务器的请求响应监听等。
  • 循环条件一直为true就会造成无限循环,正常业务编程中应该尽量避免死循环。会影响程序性能或造成程序卡死崩溃。

dowhile循环

do{

​ //代码语句

​ }while(布尔表达式);

while和do-while区别:

  • while先判断后执行,dowhile先执行后判断
  • Do...while总是保证循环体会被至少执行一次。

For循环

支持迭代的一种通用结构,是最有效最灵活的循环结构。

for(初始化;布尔表达式;更新){

//代码语句

}

示例:

public class ForTest1 {
    public static void main(String[] args) {
        int []num={10,20,30,40,50};
        for(int i=0;i<5;i++){
            System.out.println(num[i]);
        }
        for(int x:num){
            System.out.println(x);
        }
    }
}

两种使用方式输出的是一样的

break continue

  • break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。
  • continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
posted @ 2023-01-28 16:10  西瓜星冰乐  阅读(16)  评论(0)    收藏  举报