1.控制流程1

1.Scanner对象

Scanner s = new Scanner(System.in);

1.学习的基础语法中我们没有实现程序和人的交互但是Java给我们

提供了这样一个工具类我们获取用户的输入. java.util.Scanner 是

Java5 的新特性,Scanner

2.next 和nextLine

1.Next

1.一定要读取到有效的字符才可以输入

2.对输入有效字符之前遇到的空白,Next()方法会只动将其去掉

3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符

4.Next()不能得到带有空格的字符串

package com.Java.控制流程;
import java.util.Scanner;
public class Demo19 {
   public static void main(String[] args) {
       //创建一个扫描对象,用于接收键盘的数据
       Scanner scanner = new Scanner(System.in);
       //快捷键Alt Enter
       System.out.println("请使用next方式输入");
       //判断用户还有没有输入字符串
       if (scanner.hasNext()){
           //使用next方式接收
         String sts =scanner.next();//等待输入
           //输入一个字符串保存在sts中
         System.out.println("请输入内容:"+sts);
      }
       scanner.close();  //关闭IO流
  }          // System.out 表输出
}              // System.in 表输入

2.NextLine

1.以Enter 为结束符,也就是说nextline()方法是输入回车之前的所有的字符

2.可以是空格

package com.Java.控制流程;
import java.util.Scanner;
public class Demo20 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       //快捷建 new了对象以后直接.var自动生成返回值
       System.out.println("请用nextline输入");
      if (scanner.hasNextInt()) {
      String Str =scanner.nextLine();
      }
       scanner.close();
  }
}

3.Next NextLine

练习一

package com.Java.控制流程;
import java.util.Scanner;
public class Demo21 {
   public static void main(String[]args){
       Scanner scanner = new Scanner(System.in);
        int A =0;
        float B  = 0.0F;
        System.out.println("请输入整数");
        if (scanner.hasNextInt()) {
            A = scanner.nextInt();
            System.out.println("输出整数"+A);
        }else{
            System.out.println("请输入的不是整数;"+A);
        }
            if (scanner.hasNextFloat()) {
                B = scanner.nextFloat();
                System.out.println("输出小数" + B);
            }else
                System.out.println("输出的不是小数 + B");
       scanner.close();
  }
}

4.练习二 **

package com.Java.控制流程;
import java.util.Scanner;
public class Demo22 {
   public static void main(String[] args) {
       //我们可以输入多个数字,并求其总和与平均数
       Scanner scanner = new Scanner(System.in);
       double sum  = 0; //和
       int m =0;  //计算输入多少个数字
       System.out.println("请输入整数");
       while(scanner.hasNextDouble()) {
           double x = scanner.nextDouble();
              m++;//m=m+1
              sum=sum+x;
      }
       System.out.println(m+"个数的和为"+sum);
       System.out.println(m+"个数的平均值是"+(sum/m));
       scanner.close();
  }
}

3.顺序结构

1.语句与语句之间从上到下顺序进行,

4.选择结构

1.if 单选择结构

package com.Java.控制流程;
import java.util.Scanner;
public class Demo23 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       System.out.println("请输入内容");
       String txt =scanner.nextLine();
       if (txt.equals("Hello")){ equals//判断是否字符串相等
           System.out.println(txt);
      }else System.out.println("输出的不是Hello");
       scanner.close();
  }
}

2.if双选择结构

package com.Java.控制流程;
import java.util.Scanner;
public class Demo24 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       int x  =scanner.nextInt();
        if (x >60){
            System.out.println("及格");
        }else
            System.out.println("不及格");
       scanner.close();
  }
}

3.if多选择结构

package com.Java.控制流程;
import java.util.Scanner;
public class Demo25 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       int score = scanner.nextInt();
       if (score>90 &&  100>=score){
            System.out.println("A");
        }else if (score>80 &&  90>score) {
            System.out.println("B");
        }else if (score>70 &&  80>score){
            System.out.println("C");
        }else if (score>60 &&  70>score) {
           System.out.println("擦边球");
        }else if (score<60 && score>=0) {
           System.out.println("不及格");
      }else
           System.out.println("成绩不和法");
               scanner.close();
  }
}

if语句至少一个 else语句,else语句在所有的 else if语句之后

if 语句可以有若干个else if语句 ,他们必须在else语句之前

一旦其中一个else if 语句检测为 true ,其他的else if 以及else语句都将

跳过执行

4.switch 多选择结构

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

  2. 类型 可以是 int . char . short .byte

  3. 从 Java SE7 开始

  4. switch 支持字符串 String 类型了

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

    package com.Java.控制流程;
    public class Demo26 {
       public static void main(String[] args) {
           char  sum = 'A';
           switch (sum){
               case 'A'://case 进行判断
                   System.out.println("优秀");
                   break;
               case 'B':
                   System.out.println("及格");
                   break;
               case 'C':
                   System.out.println("良好");
                   break;
          }
      }          // case   有穿透的能力  
                  // break 有中止穿透的能力
    }             // switch 和case进行匹配 ,匹配会输出匹配上的

    5.switch 字符串的比较

    package com.Java.控制流程;
    public class Demo27 {
       public static void main(String[] args) {
           String name = "牛逼";
          switch(name){
              case "牛马":
                  System.out.println("牛马");
             break;
              case"牛逼":
                  System.out.println("牛逼");
              break;
          }
      }
    }            //反编译 ***

     

5.循环结构

1.while循环

1.只要布尔表达式为true,循环就会一直执行下去

2.如果我们想让表达式停止下来 ,可以输入一个失效表达式来结束

3.少部分情况需要循环一直执行

4.循环条件一直为true就会无线循环 系统容易卡死崩溃

package com.Java.控制流程;
public class Demo28 {
   public static void main(String[] args) {
       int i=0;
       while(i<100) {
           i++;
           System.out.println(i);
      }
  }
}
public class Demo29 {
   public static void main(String[] args) {
       //计算1加到100
       int i = 0;
       int sum = 0;
       while (i <=100) {
           sum = sum + i;
           i++;
      }
       System.out.println(sum);
  }
}

2.do.....while循环

对于while语句而言,如果不满足条件,则不能进入循环

do .....while 循环和while 循环相似

不同的是do .....while循环至少循环执行一次

package com.Java.控制流程;
public class Demo30 {
   public static void main(String[] args) {
       int  a =0 ;
       do {
           System.out.println(a);
      }while (a < 0) ;//输出0
  }
}

3.区别

1.while 先判段在执行 dowhile先执行后判断

 

 

 

 

 

 

posted on 2021-06-02 20:51  小白jva  阅读(349)  评论(0编辑  收藏  举报

导航