java流程控制Scanner的学习

java包机制

  • 为了更好地组织类,java提供了包机制,用于区别类名和命名空间。

  • 包语法的格式为:package pkg1[. pkg2[. pkg3...]]

  • 一般公司域名倒置作为包名

  • 为了能够使用某一个包的成员,我们需要再java程序中明确导入该包。使用"import"语句几个完成此功能

import package1[.package2...].(classname|*);

用户交互Scanner

Scanner对象-----java.util.Scanner是java5的新特征

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

  • 基本语法:Scanner s = new Scanner(System.in);

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

next():

  1. 一定要读取到有效字符才后可以结束。

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

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

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

nextLine():

  1. 以回车键Enter为结束符,也就是说nextLine()返回的是输入回车之前的所有字符。

  2. 可以得到空白

一个while循环的小实践

/我们可以输入多个数字,求其总和和平均数, 每输入一个数字用回车确认,通过输入非数字来结束输入,并输出执行结果/

package com.wang.scanner;

import java.util.Scanner;

/*我们可以输入多个数字,求其总和和平均数,
      每输入一个数字用回车确认,通过输入非数字来结束输入,并输出执行结果*/
public class Demo05c {
  public static void main(String[] args) {
      double sum = 0;//定义局部变量 和
      int m = 0;//定义局部变量m,统计多少个数字
      Scanner scanner = new Scanner(System.in);
      System.out.println("请输入数据:");
      while (scanner.hasNextDouble()){
          //用nextDouble()获取键盘输入的数字赋值给变量x
          double x = scanner.nextDouble();
          m = m+1;
          sum = sum + x;
          System.out.println("这是第"+m+"个数据," +
                  "当前总和为sum:"+sum+"当前平均值为:"+(sum/m));
      }
      System.out.println(m + "个数的和为" + sum);
      System.out.println(m + "个数的和的平均值为" + (sum/m));
      scanner.close();
  }
}

一个if的小实践

package com.wang.scanner;

import java.util.Scanner;

public class Demo04 {
  public static void main(String[] args) {
      Scanner scanner = new Scanner(System.in);
      int i = 10;
      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("不是小数数据");
      }
 
posted @ 2022-09-30 22:24  学JAVA的旅行者  阅读(35)  评论(0)    收藏  举报