import java.util.Scanner;
public class ScanDemo { //不能判别输入的是否为整数或者小数
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scan=new Scanner(System.in);
scan.useDelimiter("\n"); //修改分隔符
System.out.println("请输入数据:");
String str=scan.next();
System.out.println("输入的数据是:"+str);
System.out.print("请输入整数:");
int i=0;
if(scan.hasNextInt()){//判断是否是整数
i=scan.nextInt();
System.out.println("输入的整数是:"+i);
}
else{
System.out.println("输入的不是整数!");
scan=new Scanner(System.in);
}
}
}
//原本修改分隔符是为了能够输出包含空格的字符串
请输入数据:
hello world
输入的数据是:hello world
请输入整数:10
输入的不是整数!
所以如果我们在System.out.print(“请输入整数:”);前面加上
scan=new Scanner(System.in);之后,就没有这个问题了,相当于又使用了默认的分隔符。
运行效果如下:
请输入数据:
hello world
输入的数据是:hello world
请输入整数:10
输入的整数是:10