Java-----Scanner类

本文详细介绍了 Java 中 Scanner 类的基本用法,包括如何创建 Scanner 对象、如何使用成员方法进行不同数据类型的输入处理,以及解决常见问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package day12_01;
/*
 * 导包;创建对象;调用方法
 * System类下有一个静态的字段:
 *     public static final InputStream in;标准的输入流,对应着键盘输入
 *    
 * InputStream is=System.in
 *    
 * class Demo{
 *      public static final int x=10;
 *      public static final Student s=new Student();
 *      }
 * 
 *  int y=Demo.x;
 *  Student s=Demo.s;
 * 
 * 
 *  构造方法:
 *  Scanner(InputStream source)
 */
import java.util.Scanner;//导包
public class ScannerDemo {
       public static void main(String[] args) {
        //创建对象
       Scanner sc=new Scanner(System.in);
       int x=sc.nextInt();
       System.out.println("x:"+x);
       }


}

成员方法

package day12_02;
import java.util.Scanner;
/*
 * 基本格式:
 * public boolean hasNextXxx():
 * public Xxx nextXxx():
 *
 * 举例:int
 * public boolean hasNextInt()
 * public int nextInt()
 *
 * 注意
 * InputMismatchException:输入的和你想要的不匹配
 */
public class ScannerDemo {
       public static void main(String[] args) {
             //创建对象
             Scanner sc = new Scanner(System.in);
             //获取数据
             if(sc.hasNextInt()) {
                int x=sc.nextInt();
                System.out.println("x:"+x);

             }
             else {
                    System.out.println("您输入的数据有误");
             }
       }
}

常用的两个方法

package day12_03;
import java.util.Scanner;
/*
 * 常用的两个方法
 * public int nextInt()
 * public String nextLine()
 *
 * 出现问题:先获取一个数值,再获取一个字符串
 * 主要原因:换行符号\n
 * 解决问题:
 * A.先获取一个数值后,再创建一个新的键盘录入对象获取字符串
 * B.把所有的数据都先按照字符串,然后要什么,就对应的转换什么
 */
public class ScannerDemo {
        public static void main(String[] args) {
                    Scanner sc=new Scanner(System.in);
                    //获取两个int类型的值
//                  int a=sc.nextInt();
//                  int b=sc.nextInt();
//                  System.out.println("a:"+a+",b:"+b);
//                  System.out.println("-------------");

                    //获取两个String类的值
//                  String s1=sc.nextLine();
//                  String s2=sc.nextLine();
//                  System.out.println("s1:"+s1+",s2:"+s2);
//                  System.out.println("-------------");

                    //先获取一个字符串,在获取一个int值
//                  String s1=sc.nextLine();
//                  int b=sc.nextInt();
//                  System.out.println("s1:"+s1+",b:"+b);
//                  System.out.println("------------");

                    //先获取一个int值,在获取一个字符串
//                  int a =sc.nextInt();
//                  String s2=sc.nextLine();
//                  System.out.println("a:"+a+",s2:"+s2);

                    int a=sc.nextInt();

                    Scanner sc2=new Scanner(System.in);
                    String s=sc2.nextLine();
                    System.out.println("a:"+a+",s:"+s);
             }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值