当用户尝试输入字符串而不是int时,我需要此代码来生成错误消息。我该怎么做呢?
import java.util.Scanner; public class Testing { public static void main (String [] args){ Scanner s = new Scanner(System.in); System.out.println("Please enter an int"); input = s.nextInt(); } }
答案 0 :(得分:1)
使用循环。检查是否有int
。如果没有显示消息。像,
Scanner s = new Scanner(System.in);
while (true) {
System.out.println("Please enter an int");
if (s.hasNextInt()) {
input = s.nextInt();
// ...
break;
}
System.err.printf("%s isn't an int%n", s.next());
}
答案 1 :(得分:1)
检查用户是否使用int
方法提供了正确的hasNextInt()
。
nextInt()
读取该值。 int
,您可以使用next()
来消费它(您不必真正使用该值,但您需要从扫描仪中取出它,以便您可以阅读其他值来自用户)。