02_Java流程控制

Posted 一只夫夫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02_Java流程控制相关的知识,希望对你有一定的参考价值。

目录

Scanner对象


java.util.Scanner是jdk5的新特性,可以通过Scanner来获取用户的输入输出。

基本语法:

Scanner s = new Scanner(System.in);

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

  • next: 以空格为结束符,不能得到带有空格的字符串
  • nextLine:以回车为结束符
package com.scanner;

import java.util.Scanner;

public class DemoS02 
    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+"个数据,当前sum="+sum);
        
        System.out.println(m+"个数的和为"+sum);
        System.out.println(m+"个数的平均值为"+sum/m);

        //先把这两句写上
        scanner.close();
    


顺序结构



选择结构


  • if
  • if else
  • if else if
  • if里面嵌套if
  • switch多选择结构
if(score==100)
    System.out.println("恭喜满分");
else if (score<100 && score>=90)
    System.out.println("优");
else if (score<100 && score>=80)
    System.out.println("良");
else if (score<100 && score>=70)
    System.out.println("中");
else if (score<100 && score>=60)
    System.out.println("及格");
else if (score<100 && score>=0)
    System.out.println("不及格");
else
    System.out.println("成绩不合法");

//JDK7新特性,switch括号里的内容也可以是字符串
switch (grade)
    case "A":
        System.out.println("优秀");
        break;
    case "B":
        System.out.println("良好");
        break;
    case "牛逼":
        System.out.println("nb");
        break;
    default:
        System.out.println("gun");

反编译

在file --> project structure中可以看到.class文件的输出目录,把.class文件复制到当前工作目录,在IDEA中就可以打开了


循环结构


  • while

  • do while 循环

  • for 循环

  • 在Java5中引入了一种主要用于数组的增强型for循环

  • break: 直接退出循环

  • continue: 直接跳出本次循环,进行下一次循环

    • 标签:continue 后面接一个标记地址

格式:

while(表达式内容)
    //循环内容


do(表达式内容)
    //代码语句
while(表达式内容);

for(初始化; 布尔表达式; 更新)
    //代码语句


//增强for循环
//主要用来遍历数组和集合对象
for(声明语句 : 表达式)

    //代码句子


增强for循环

package com.struct;

public class DemoStruct01 
    public static void main(String[] args) 
        int[] numbers = 10, 20, 30, 40, 50;   //定义一个数组
        for(int x : numbers)
            System.out.println(x);	//遍历输出number中的内容
        
    


continue标签

package com.struct;

public class DemoStruct01 
    public static void main(String[] args) 
        //输出0~100之间的质数
        start:
        for (int i = 2; i < 100; i++) 
            //判断是否为质数,如果不是,则立即跳转
            for (int j = 2; j<i; j++)
                if (i%j == 0) continue start;
            
                System.out.println(i);
        
    

以上是关于02_Java流程控制的主要内容,如果未能解决你的问题,请参考以下文章

Java语言的流程控制

Java_程序流程控制和数组

大数据技术之_23_Python核心基础学习_02_ 流程控制语句 + 序列(10.5小时)

02 : python 基础语法,流程控制语句

03_Java基础语法_第3天(ScannerRandom流程控制语句)_讲义

java_java流程控制_12