2017-11-02 16:33:11
Scanner类:一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
Scanner
使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。
*构造方法
*常用方法
基本格式:hasNextXxx():判断是否还有下一个输入项,其中Xxx可以是Int,Double等。如果需要判断是否包含下一个字符串,可以省略Xxx。
nextXxx():获取下一个输入项。
默认情况下,Scanner使用空格,回车作为分隔符。
常用的有Public int nextInt(),Public String nextLine()。
先获取数值类型,再获取字符串类型会出现问题。这个问题在C++中也遇到过。
public static void main(String[] args) { Scanner sc = new Scanner(System.in); //y会为空 int x=sc.nextInt(); String y=sc.nextLine(); System.out.println(x+y); }
解决方法:
A:重定义一个扫描器
B:先全部使用字符串获取,再转换
public static void main(String[] args) { Scanner sc = new Scanner(System.in); //y会为空 int x=sc.nextInt(); Scanner sc2 = new Scanner(System.in); String y=sc2.nextLine(); System.out.println(x+y); }
时间: 2024-10-11 10:54:05