javaSE21/9/4

javaSE流程控制

Scanner对象

  • Scanner类可以获取用户的输入
  • 基本语法:Scanner s = new Scanner(System.in)
  • 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据

next();

  • 一定要读取到有效字符后才可以结束输入
  • 会将空格看做结束符
  • next()不能得到带有空格的字符串
import java.util.Scanner;//导入Scanner包
public class Demo{
        public static void main(String[] args) {
            //创建一个扫描器对象,用于接收键盘数据
            Scanner scanner = new Scanner(System.in);
            System.out.println("使用next方法接收:");//输入Hello World
                String str = scanner.next();
                System.out.println("输出的内容为:"+str);//输出Hello
            //凡是属于IO流的类如不关闭会一直占用资源,要用完就关掉
            scanner.close();
            }          
        }

nextLine();

  • 以Enter为结束符,会返回输入回车之前的所有字符串
  • 可以得到空格
public class Demo{
        public static void main(String[] args) {
            //创建一个扫描器对象,用于接收键盘数据
            Scanner scanner = new Scanner(System.in);
            System.out.println("使用nextLine方法接收:");//输入Hello World
            //判断用户有没有输入字符串
                //使用nextLine方法接收
                String str = scanner.nextLine();
                System.out.println("输出的内容为:"+str);//输出Hello World
                scanner.close();
            }
        }
}

Scanner进阶

public class Demo{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int i = 0;
        float f = 0.0f;
        System.out.println("请输入整数:");
        if(scanner.hasNextInt()){
            i = scanner.nextInt();
            System.out.println("整数为:"+i);
        }else{
            System.out.println("输入的值不是整数!");
        }
        System.out.println("请输入小数:");
        if(scanner.hasNextFloat()){
            f = scanner.nextFloat();
            System.out.println("小数为:"+f);
        }else{
            System.out.println("输入的值不是小数!");
        }
    }
}

输入多个数字,求总数和,平均值

public class Demo{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        double sum = 0;
        int m = 0;
        while (scanner.hasNextDouble()) {
            double i = scanner.nextDouble();
            m++;
            sum = sum + i;
        }
        System.out.println(m+"个数字的总和为:"+sum);
        System.out.println(m+"个数的平均数为:"+sum/m);
        scanner.close();
    }
}

顺序结构

  • 从上到下按顺序执行,除非特别指明,否则按顺序一句一句执行

选择结构

if单选择结构

  • if(){
    }

if双选择结构

  • if(){
    }else{
    }

if多选择结构

if(){
}else if(){
}else if(){
}else{
}

if嵌套结构

switch多选择结构

  • switch case语句
  • 判断一个变量与一系列值中某个值是否相等,每个值成为一个分支
public class Demo{
    public static void main(String[] args) {
        char grade = 'D';
        //case穿透现象:没有break会一直向下运行,遇到break就停止
        switch (grade){
            case 'A':
                System.out.println("优秀");
                break;
            case 'B':
                System.out.println("良好");
                break;
            case 'C':
                System.out.println("及格");
                break;
            case 'D':
                System.out.println("不及格");
                break;
            default:
                System.out.println("没有找到");
        }
    }
}

循环结构

while结构

  • 如果不满足条件,就不能进入循环
  • 结构:while(布尔表达式){
    //循环内容
    }
public class Demo{
    public static void main(String[] args) {
        int i = 0;
        int sum = 0;
        while (i<=100){
            sum = sum + i;
            i++;
        }
        System.out.println(sum);
    }
}

do...while循环

  • 至少会执行一次
  • 格式:do{
    //循环内容
    }while(布尔表达式)
  • while先判断再执行,do while先执行再判断
public class Demo{
    public static void main(String[] args) {
        int i = 0;
        int sum = 0;
        do{
            sum = sum + i;
            i++;
        }while (i<=100);
        System.out.println(sum);
    }
}

for循环

  • 格式:for(初始化;布尔表达式;更新){
    //代码语句
    }
  • IDEA中可用100.for表示i从0到100的for循环

计算0到100之间的奇数和偶数的和

public class Demo{
    public static void main(String[] args) {
        int sum1 = 0;
        int sum2 = 0;
        for (int i = 1; i<100; i++) {
            if(i%2==1){
                sum1 = sum1 +i;
            }else{
                sum2 = sum2 +i;
            }

        }
        System.out.println("0到100之间奇数的和为:"+sum1);
        System.out.println("0到100之间偶数的和为:"+sum2 );
    }
}
posted @ 2021-09-04 21:39  想吃坚果  阅读(37)  评论(0)    收藏  举报