Scanner使用

Scanner扫描

如何从键盘获取不同类型的变量:需要使用Scanner类

具体的实现步骤:

  • 导包:import java.util.Scanner;

  • Scanner的实例化:Scanner scan= new Scanner(System.in);

  • 调用Scanner类的相关方法,来获取指定类型的变量

   import java.util.Scanner;
  //注意:上面这一行就是导包
  public class scanner01 {
  public static void main(String[] args) {
  Scanner scan= new Scanner(System.in);
  //注意:上面这一行是入口:接收从键盘输入的数字
  int num= scan.nextInt();
  System.out.println(num);
  }
}
输入:888
输出:888

注意:String类型是next(), 其他类型都是nextxxxx(), 比如nextDouble()

需要根据相应的方法来输入指定类型的值。如果输入的类型不匹配,会导致异常-程序终止。

 

题目:从键盘输入小明的成绩,当成绩为100时,奖励一辆宝马;当成绩为80-99分时,奖励一台IPhone;当成绩为60-80分时,奖励一台IPad;如果成绩不及格,就没有奖励。

       import java.util.Scanner;
      public class Scanner02 {
      public static void main(String[] args) {
      Scanner scan = new Scanner(System.in);
      System.out.println("请输入成绩:");
      double grades = scan.nextDouble();
      if (grades == 100.0) {
      System.out.println("奖励一辆宝马");}
      else if(grades>=80.0&&grades<100.0){
      System.out.println("奖励一台Iphone xs max");}
      else if(grades>=60.0&&grades<80.0){
      System.out.println("奖励一台Ipad");}
      else if(grades>=0&&grades<60){
          System.out.println("没有奖励");}
      else {
          System.out.println("当前输入成绩无效,请输入有效成绩!");}
  }
  }

注意:条件表达式之间如果是互斥关系,那么谁写前面没有关系;如果有交集,就要考虑清楚谁放在前面;如果是包含关系,就把范围小的放在前面。

        int num3= scan.nextInt();
      int min1=(num1<num2)?num1:num2;
      int min2=(min1<num3)?min1:num3;
       

题目:从键盘随意输入三个数,然后依次从小到大输出

import java.util.Scanner;
public class scanner03 {
  public static void main(String[] args) {
      Scanner scan= new Scanner(System.in);
      System.out.println("请输入第一个数字:");
      int num1= scan.nextInt();
      System.out.println("请输入第二个数字:");
      int num2= scan.nextInt();
      System.out.println("请输入第三个数字:");
      int num3= scan.nextInt();
      if (num1<num2&num1<num3){
          System.out.print(num1+"\t"); }
      else if(num2<num1&num2<num3){
          System.out.print(num2+"\t");}
      else { System.out.print(num3+"\t");}

      if ((num1>num2&num1<num3)|(num1>num3&num1<num2)){
          System.out.print(num1+"\t"); }
      else if((num2>num1&num2<num3)|(num2>num3&num2<num1)){
          System.out.print(num2+"\t"); }
      else{ System.out.print(num3+"\t"); }

      if (num1>num2&num1>num3){
          System.out.print(num1); }
      else if(num2>num1&num2>num3){
          System.out.print(num2); }
      else { System.out.print(num3); }

  }
}

Scanner使用

判断婚恋题目:

Scanner使用

   方法一:
  import java.util.Scanner;
      public class scanner05 {
      public static void main(String[] args) {
      Scanner scan=new Scanner(System.in);
       
      System.out.println("请输入您的身高:(cm)");
      int heigh=scan.nextInt();
       
      System.out.println("请输入您的大概资产:(万元)");
      double wealth= scan.nextDouble();
       
      System.out.println("是否帅:(true/false)");
      boolean handsome= scan.nextBoolean();
       
      if(heigh>=180&&wealth>=1000&&handsome) {
          System.out.println("我们结婚吧^_^"); }
      else if(heigh>=180||wealth>=1000||handsome){
          System.out.println("我们可以试着交往^_^"); }
      else System.out.println("抱歉,你是个好人,但我们不合适");
      }
      }

Scanner使用

注意:如果想输入是 / 否,就用上面的方法二。

 

上一篇:801. 二进制中1的个数(lowbit(n)函数)


下一篇:T1152,T2037,T1113