Java流程控制

Scanner

基本语法

Scanner s = new Scanner(System.in);

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

String str = scanner.next();

表示可以可以获取用户输入的数据并赋值给str

System.out.println(str);

表示输出用户输入的数据

import java.util.Scanner;

public class Demo03 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       System.out.println("使用nextline方式接收:");
       String str = scanner.nextLine();//获取用户从键盘输入的数据
       System.out.println("输出的内容为:"+str);
       scanner.close();
  }
}

顺序结构

Java最基本的结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行

任何一个算法都离不开顺序这个基本算法结构

 

选择结构

if单选择结构

 

if(布尔表达式){//如果不输入值,默认为true
   //如果布尔表达式为true将执行代码
}

if双选择结构

if(布尔表达式){//如果不输入值,默认为true
   //如果布尔表达式为true将执行代码
}else{
   //如果布尔表达式为false将执行代码
}

 

if多选择结构

if(布尔表达式 1){//如果不输入值,默认为true
   //如果布尔表达式 1的值为true将执行代码
}else if(布尔表达式 2){
   //如果布尔表达式 2的值为true将执行代码
}else if(布尔表达式 3){
   //如果布尔表达式 3的值为true将执行代码
}else{
   //如果以上布尔表达式都不为true将执行代码
}

 

嵌套的if结构

if(布尔表达式 1){//如果不输入值,默认为true
   //如果布尔表达式 1的值为true将执行代码
   if(布尔表达式 2){
   //如果布尔表达式 2的值为true将执行代码
  }
}

 

switch多选择结构

多选择结构还有一个实现方法就是 switch case 语句

switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支

switch(expression){
   case value:
       //语句
       break;//可选
   case value:
       //语句
       break;//可选
       //你可以又任意数量的case语句
       default://可选
           //语句
}
public class switchDemo01 {
   public static void main(String[] args) {
       //case穿透 switch 匹配一个具体的值
       char grade = 'C';
       switch (grade){
           case 'A':
               System.out.println("优秀");
               break;
           case 'B':
               System.out.println("良好");
               break;
           case 'C':
               System.out.println("及格");
               break;
           default:
               System.out.println("未知等级");
      }
  }
}

实例

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

  • byte,short,int或者char

  • 从Java SE7 开始

  • switch支持字符串String类型了

  • 同时case标签必须为字符串常量或字面量

    case穿透现象:当case下面没有break的时候,下面的全部都会被输出

    IDEA反编译方法

    首先点击File->project structure 能看到Compiler output右边对应的class文件夹

    然后右键点击你需要反编译的包 再点击open in ->explorer 再把class文件拖到java文件夹里面去,就能看到IDEA包下面出现一个.class的文件,然后双击class文件就能看到反编译了

     

  •