JavaSE基础02

Java流程控制

1. 用户交互Scanner

public class Scanner {
    //创建一个扫描对象,用来接收键盘数据
    Scanner scanner_input = new Scanner(System.in);
    System.out.print("请输入数据:");

    //判断用户有没有输入字符串
    if(scanner_input.hasNext()){
        String string_01 = scanner_input.nextLine();
        System.out.println("输出的内容为:" + string_01);
    }
    //凡是属于IO流的类如果不关闭会一直占用资源。要在使用之后关掉
    scanner_input.close;
}
public class Scanner_02{
    Scanner scanner_02_input = new Scanner(System.in);
    
    int number_i = 0;
    float number_f = 0.0f;
    
    if(scanner_02_input.hasNextInt()){
        number_i = scanner_02_input.nextInt();
        System.out.pritnln("您输入的整数是:" + number_i);
    }else{
        System.out.println("您出入的数据不是整数")
    }
    if(scanner_02_input.hasNextFloat()){
        number_f = scanner_02_input.nextFloat();
        System.out.println("您输入的小数是:" + number_f);
    }else{
        System.out.println("您输入的数据不是小数");
    }
}
public class Scanner_03 {
    Scanner scanner_03_input = new Scanner(System.in);
    
    int m = 0;
    double sum = 0;
    
    while(scanner_03_input.hasNextDouble){
        double x = scanner_03_input.nextDouble();
        m = m + 1;  //m++   ++m
        sum = sum + x;
        System.out.println("您出入了" + m + "个数,总和为" + sum)
    }
    double average_number = sum/m;
    System.out.println("输入的全部数据的总和:" + sum);
    System.out.pritnln("输入的全部数据的平均数" + average_number);
     //System.out.println("输入的全部数据的平均数:" + (sum/m));
    scanner_03_input.close;
}

2. 选择结构

1. if选择结构语法

if(布尔表达式){
    //如果布尔表达式为true 将执行的语句
}
if(布尔表达式){
    //如果布尔值为true
}else{
    //如果布尔值为false
}
if(布尔表达式1){
    //如果布尔表达式1的值为true执行代码
}else if(布尔表达式2){
    //如果布尔表达式2的值为true执行代码
}else if(布尔表达式3){
    //如果布尔表达式3的值为true执行代码
}else{
    //如果以上代码表达式的值都不为true执行代码
}
    
public class IF{
    Scanner scanner_If = new Scanner(System.in);
    
    System.out.pritnln("请输入您要输入的数据:");
    String string_0 = scanner_If.nextLine();
    
    if(string_0.equals("HelloWorld")){
        System.out.println(string_0);
    }
    scanner_If.close;
}
public class IF_02 {
    Scanner scanner_If = new Scanner(System.in);
    
    System.out.println("请输入您要输入的数据:");
    int number_0 = new scanner_If.nextInt();
    
    if(number_0 >= 60){
        System.out.println("本次考试成绩及格");
    }else if(number_0 < 60){
        System.out.println("本次考试成绩不合格");
    }
    scanner_If.close;
}
public class IF_03 {
    Scanner scanner_If = new Scanner(System.in);
    System.out.println("请输入您要输入的数据:");
    
    int number_0 = new scanner_If.nextInt();
    
    if(number_0 == 100){
        System.out.println("恭喜您本次考试成绩获得满分!")
    }else if(number_0 >= 90 && number_0 < 100){
        System.out.println("成绩为:A");
    }else if(number_0 >= 80 && number_0 < 90){
        System.out.println("成绩为:B");
    }else if(number_0 >= 80 && number_0 < 90){
        System.out.println("成绩为:C");
    }else if(number_0 >= 70 && number_0 < 80){
        System.out.println("成绩为:D");
    }else if(number_0 >= 60 && number_0 < 70){
        System.out.println("成绩为:E");
    }else (nunumber_0 < 60){
        System.out.println("很遗憾,本次考试成绩为不及格");
    }
    scanner_If.close;
}

2. switch多选择结构

switch(expression){
    case value :
        //语句
        break;
    case value :
        //语句
        break;
    case value :
        //语句
        break;
    default :
        //语句
}

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

byte、short、int、char

String类型

public class Switch {
    char grade = 'C';
    
    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;
        case 'E':
            System.out.println("挂科");
        default:
            System.out.println("位置");
    }
}
public class Switch_01 {
    // 字符的本质还是数字
    //反编译   java---class(字节码文件)---反编译(IDEA)
    String name = "kuangshen";
    switch(name){
        case "frank" :
            System.out.println("frank");
            break;
        case "kuangshen" :
            System.out.println("kuangshen");
            break;
        default:
            System.out.ptintln("干什么?")
    }
    
}

3. 循环结构

循环结构需要的条件

初始化条件、条件判断、循环体、迭代

1. while

while是最基本的循环

while(布尔表达式){
    //循环内容
}

在正常的业务中要尽量避免死循环

public class while_0 {
    int i = 0;
    int sum = 0;
    while(i <= 100){
        sum = sum + i;
        i++
    }
    System.out.println(sum);
}

2. do...while循环

do {
    //代码语句
}while(布尔表达式)

3. For循环

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

关于For循环有以下几点说明:

最先执行初始化步骤,可以声明一种类型,但可以初始化一个或者多个循环控制变量,也可以是空语句

然后,检测布尔表达式的值。如果为true,循环体被执行,如果为false,循环终止,开始执行循环体后面的语句

执行一次循环后,跟新循环控制变量(迭代因子控制循环变量的增减)

再次检测布尔表达式的值,循环执行上面的过程

//用For循环求0-100以内的奇数跟偶数的和
public class For_0 {
    public void For_cycle(int i){
        int sum_o = 0;
        int sum_j = 0;
        for(;i <= 100; i++){
            if(i % 2 == 0){
                sum_o = sum_o + i;
            }else {
                sum_j = sum_j + i;
            }
            System.out.pritnln("0-100以内的偶数的和:" + sum_o);
            System.out.pritnln("0-100以内的奇数的和:" + sum_j);
        }
    }
}
//用For循环输出1-1000之间能被5整除的数,并且每行输出3个
public class For_1 {
    public void For_cycle(int i) {
        for(;i <= 1000;i++) {
            if(i % 5 == 0){
                System.out.println(i + "\t");
            }
            if(i % (5 * 3) == 0){
                Sysatem.out.println();
                //System.out.println("\n");
                }
        }
    }
}
//打印九九乘法表
public class For_2 {
    public void For_cycle(){
        for(int i = 1;i <= 9;i++){
            for(int j = 1;j <= i;j++){
                System.out.print(i + "\t" + "*" + j + " = " + (i*j));
 
            }        
                System.out.println();
                //System.out.println("\n");
        }
    }
}

4. 增强For循环

//增强for循环
for(声明语句 : 表达式) {
    //代码语句
}
  • 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等
  • 表达式:表达式是要访问的数组名,或者是返回值为数组的方法
public class For_plus {
    //定义了一个数组
    int[] numbers = {10,20,30,40,50};
    
    for(int i = 0;i < 5;i++){
        System.out.println(numbers[i]);
    }
    //-------------------------------------------------------------------
    for(int x : numbers){
        System.out.println(x);
    }
    
}

4. break,continue

break:在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环的其余语句。(break语句也在switch语句中使用)

public class Break_0 {
    public void break_0(){
        int i = 0;
        while(i < 100){
            i++;
            SYstem.out.println(i);
            if(i == 30){
                break;
            }
        }
    }
}

continue语句用在循环体语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定

public class Continue_0{
    public void continue_0(){
        int i = 0;
        while(i < 100){
            i++;
            if(i % 10 == 0){
                System.out.println();
                continue;
            }
            System.out.println(i);
        }
    }
}
//打印三角形
public class Triangle {
    public void Triangle_0() {
        for(int i = 1;i <= 5;i++){
            for(int j = 5;j >= i;j++){
                System.out.println(" ");
            }
            for(int j = 1;j <= i;j++){
                System.out.println("*");
            }
            for(int j = 1; j < i;j++){
                System.out.println("*");
            }
            System.out.println();
        }
    }
}
//打印九九乘法表
public class NineNineTable {
    public void nineNineTable(){
        for(int j = 1;j <= 9;j++){                  //两种思路 1.首先先写内层循环,在内层循环的基础上套上外层循环
            for(int i = 1;i <= j;i++){             //         2.先写外层循环,在外层循环内嵌套内层循环
                System.out.print(j + "*" + i + "=" + (j*i) + "\t");
            }
            System.out.pritnln();
        }
    }
}
posted @ 2025-02-26 16:46  LYQ学Java  阅读(13)  评论(0)    收藏  举报