Java小白学习中0456

时间:2021-07-14
本文章向大家介绍Java小白学习中0456,主要包括Java小白学习中0456使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

偷懒了好多天呐呀  >-<

四. java流程控制

 1. 用户交互 Scanner

  • 通过Scanner 类来获取用户的输入

  • 基本语法:

1 Scanner s = new Scanner (System.in);
  • 通过Scanner 类的 next() 与nextLine() 方法获取输入的字符串,在读取前我们一般需要 使用 hasNext() 与 hasNetLine() 判断是否还有输入的数据。

  • ①next():
    • 一定要读取到有效字符后才可以结束输入。

    • 对输入有效字符之前遇到的空白,net()方法会自动将其去掉。

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

    • next()不能得到带有空格的字符串。

    • import java.util.Scanner;
      
      public class Demo01 {
          public static void main(String[] args) {
              //创建一个扫描器对象,用于接受键盘数据
              Scanner scanner = new Scanner(System.in);// 输入new Scanner(System.in); 点击 alt+enter// System.in用于接收数据
              System.out.println("使用next方式接收:");
              //判断用户有没有输入字符串
              if(scanner.hasNext()){
                  //使用next方式接收
                  String str = scanner.next();//程序会等待用户输入完毕//输入 scanner.next(); 点击alt+enter自动补全
                  System.out.println("输出的内容为:"+str);
              }
              //凡是属于IO(input/output)流的类如果不关闭会一直占用资源,要及时关闭
              scanner.close();
          }
      }
  • ②nextLine():
    • 以enter为结束符,也就是nextLine() 方法返回的是输入回车之前的所有字符。

    • 可以获得空白。

    • import java.util.Scanner;
      
      public class Demo02 {
          public static void main(String[] args) {
              //从键盘接收数据
              Scanner scanner = new Scanner(System.in);
              System.out.println("使用nextLin方式接收:");
              //判断是否还有输入 
              if (scanner.hasNextLine()){
                  String str = scanner.nextLine();
                  System.out.println("输出内容为:"+ str);
              }
              scanner.close();
          }
      }
      import java.util.Scanner;
      
      public class Demo03 {
          public static void main(String[] args) {
      
              Scanner scanner = new Scanner(System.in);
      
              System.out.println("使用nextLin方式接收:");
      
              String str = scanner.nextLine();//可以不用if,直接用
      
              System.out.println("输出内容为:"+ str);
      
              scanner.close();
          }
      }
  • 公式为:
    • new Scanner(System.in);
      System.out.println("使用  方式接收:");
      scanner.next();//scanner.nextLine();
      System.out.println("输出的内容为:"+);
  • nextInt()   nextFloat()
    • import java.util.Scanner;
      
      public class Demo04 {
          public static void main(String[] args) {
              Scanner scanner = new Scanner(System.in);
              //从键盘接收数据
              int i = 0;
              float f = 0.0f;
              System.out.println("输入一个整数:");
              if (scanner.hasNextInt()){
                  i = scanner.nextInt();
                  System.out.println("输出的内容为:"+i);
              }else{
                  System.out.println("输出的内容不是整数");
              }
      
              System.out.println("输入一个小数:");
              if (scanner.hasNextFloat()){
                  f = scanner.nextFloat();
                  System.out.println("输出的内容为:"+f);
              }else{
                  System.out.println("输出的内容不是小数");
              }
              scanner.close();
          }
      }
  • 练习:
    • import java.util.Scanner;
      
      public class Demo05 {
          //输入多个数字,并求其总和与平均值,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
          public static void main(String[] args) {
              Scanner scanner = new Scanner(System.in);
              //计算输入多少个数
              int m = 0;
              //
              double sum = 0;
              System.out.println("请输入数据:");
              //通过while循环判断是否还有输入,并在里面对每一项进项求和统计
              while (scanner.hasNextDouble()){
                  double x = scanner.nextDouble();
                  m += 1;// m = m + 1 //  m++
                  sum += x;// sum = sum + x
                  System.out.println("你输入了第"+m+"个数据,当前和为"+sum);
              }
              System.out.println(m+"个数的和为:"+sum);
              System.out.println(m+"个数的平均值为:"+(sum/m));
              scanner.close();
          }
      }

 2.顺序结构

  • java 的基本结构就是顺序结构,除非特别指明,否则就是按着顺序从上到下依次执行。
  • 它是任何一个算法都离不开的一种基本算法结构。

 3.选择结构

  • if单选择结构

    • 需要判断一个东西是否可行,我们才能去执行

    • 语法:

      if(布尔表达式){
          //如果布尔表达式为true将执行的语句
      }
    • 举例:
      import java.util.Scanner;
      
      public class IfDemo01 {
          public static void main(String[] args) {
              Scanner scanner = new Scanner(System.in);
      
              System.out.println("请输入内容:");
              String s = scanner.nextLine();
              //equals :判断字符串是否相等
              if (s.equals("Hello")){
                  System.out.println(s);
              }
              System.out.println("end");
              scanner.close();
          }
      }
  • if双选择结构

    • 双向选择 if-else

    • 语法:

      if(布尔表达式){
          //如果布尔表达式的值为true
      }else{
          //如果布尔表达式的值为false
      }
    • 练习:
      import java.util.Scanner;
      
      public class IfDemo02 {
          public static void main(String[] args) {
              //考试分数大于60为及格,反之为不及格
              Scanner scanner = new Scanner(System.in);
              System.out.println("请输入成绩:");
              int score = scanner.nextInt();
              if (score>60){
                  System.out.println("及格");
              }else{
                  System.out.println("不及格");
              }
              scanner.close();
          }
      }
  • if多选择结构

    • 有多个选择时

    • 语法:

      if(布尔表达式 1){
          //如果布尔表达式 1的值为true执行代码
      }else if(布尔表达式 2){
          //如果布尔表达式 2的值为true执行代码
      }else if(布尔表达式 3){
          //如果布尔表达式 3的值为true执行代码
      }else {
          //如果以上布尔表达式都不为true执行代码
      }
    • 练习:
      import java.util.Scanner;
      
      public class IfDemo03 {
          public static void main(String[] args) {
              //成绩等级划分
              Scanner scanner = new Scanner(System.in);
              System.out.println("请输入成绩:");
              int score = scanner.nextInt();
              if(score == 100){
                  System.out.println("恭喜满分");
              }else if (score < 100 && score >= 90){
                  System.out.println("A级");
              }else if (score < 90 && score >= 80){
                  System.out.println("B级");
              }else if (score < 80 && score >= 70){
                  System.out.println("C级");
              }else if (score < 70 && score >= 60){
                  System.out.println("D级");
              }else if (score < 60 && score >= 0){
                  System.out.println("不及格");
              }else{
                  System.out.println("数据错误");
              }
              scanner.close();
          }
      }
  • 嵌套的if结构

    • 可在另一个if或者else-if语句中使用if或else-if语句

    • 语法:

      if(布尔表达式 1){
          //如果布尔表达式 1 为true执行代码
          if(布尔表达式 2){
              //如果布尔表达式 2 为true执行代码
          }
      }

 

原文地址:https://www.cnblogs.com/chenyifei/p/15012906.html