Java学习笔记--流程控制

Java流程控制

Scranner对象

用于获取用户输入

Scanner s = Scanner(System.in);

import java.util.Scanner;

public class Demo01 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);//创建一个扫描器对象,用于接受数据
        System.out.println("使用next方式接收:");
        //判断用户有没有字符串输入
        if (scan.hasNext()){
            //使用next方式接收
            String str = scan.next();
            System.out.println("输入的内容为"+str);
        }
        //IO流不关闭会一直占用资源
        scan.close();
    }
}
import java.util.Scanner;

public class Demo02 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("NextLine");
        if(scanner.hasNextLine()){
            String str = scanner.nextLine();
            System.out.println("输出"+str);
        }
        scanner.close();
    }
}

java顺序结构

public class SeqDemo {
    public static void main(String[] args) {
        System.out.println("H");
        System.out.println("e");
        System.out.println("l");
        System.out.println("l");
        System.out.println("o");
        System.out.println("!");
    }
}

Java选择结构

if选择结构

package com.hu.struct;

import java.io.StreamCorruptedException;
import java.util.Scanner;

public class IfDemo02 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int score = scanner.nextInt();
        if (score>100)
            System.out.println("???");
        else if (score >= 90 )
            System.out.println("A+");
        else if(score>=80)
            System.out.println("A");
        else if (score>=60)
            System.out.println("B");
        else if (score>=0)
            System.out.println("不及格");
        else
            System.out.println("???");
        scanner.close();
    }

switch结构

  • switch语句的变量类型为:

    1. byte short int char类型
    2. String类
public class switchDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("输入等级: ");
        String grade = scanner.next();//JDK7新特性,支持字符串
        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("没救了,等死吧");//未break,输入"E"时出现case穿透,输出后面语句内容
            default:
                System.out.println("瞎几把输入些啥");
        scanner.close();
        }

    }
}

循环结构

while循环

while(boolean){
    //循环内容
}
do{
    //循环
}while(boolean);

while循环和do while循环的区别:

whlie循环先判断后执行,do while循环先判断后执行

do while循环至少被执行一次

public class DoWhileDemo {
    public static void main(String[] args) {
    int a=0;
    while(a<0){
        System.out.println(a);
        a++;
    }
        System.out.println("==============");
    do {
        System.out.println(a);//输出0
        a++;
    }while (a < 0);
    }
}

for循环

for(初始化;boolean;更新){
    //表达式
}
for(; ; ){//死循环
    
}

for循环初始化可以初始化一个或者多个变量,也可以是空语句

布尔语句结果为true时循环执行,为false不执行

public class ForDemo04 {
   public static void main(String[] args) { // 打印九九乘法表
       for (int i = 1; i < 10; i++) {
           for (int i1 = 1; i1 <= i; i1++) {
               System.out.print(i1 + "*" + i + "=" + i*i1 + "\t");
           }
           System.out.println();
       }
   }
}

增强for循环

public class ForDemo05 {
    public static void main(String[] args) {
         int[] numbers = {10, 20, 30, 40, 50};//定义一个数组
        for(int x:numbers){ //增强for循环,用于遍历数组和集合中的元素
            System.out.println(x);
        }
        System.out.println("============");
        for (int i = 0; i < 5; i++) {//等价于
            System.out.println(numbers[i]);
        }
    }
}

break continue

break

  • break语句在循环内部的任何位置被执行时,都会生效

  • 被执行时强制退出整个循环过程,结束为执行语句

public class BreakDemo {
    public static void main(String[] args) {
        int i = 0;
        while (true){
            i++;
            System.out.println(i);
            if(i>=30)
                break;
        }
    }
}

continue

  • continue用于跳过某次循环,直接进行下一次循环
public class ContinueDemo {
    public static void main(String[] args) {
        int i=0;
        while(i<50){
            i++;
            if(i>30)
                continue; //i大于30时终止某次循环,直接进行下一次
            System.out.println(i);
        }
    }
}

打印三角形

public class Test {
    public static void main(String[] args) {
        for (int i = 0; i < 5; i++) {
            for(int j=3;j>=i;j--){
                System.out.print(" ");
            }
            for(int j=0;j<=i;j++){
                System.out.print("*");
            }
            for (int j=0;j<i;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
posted @ 2021-03-10 01:21  DDeann  阅读(64)  评论(0)    收藏  举报