当用户输入字符串(例如“30
”)时,程序应该给出输出“invalid input
”,然后提示用户键入有效输入。当我键入字符串时,我会在线程“main”java.util.InputMismatchException中得到错误消息异常。
public static void main(String[] args) {
double wallHeight = 0.0;
boolean valid = true;
// Implement a do-while loop to ensure input is valid
// Prompt user to input wall's height
do {
System.out.println("Enter wall height (feet): ");
wallHeight = scnr.nextDouble();
valid = true;
if (wallHeight <= 0) {
System.out.println("Invalid Input");
valid = false;
}
} while (!valid);
根据scanner.nextdouble()
的文档:
InputMisMatchException-如果下一个令牌与浮动正则表达式不匹配,或者超出范围
这意味着如果用户键入非数字字符,nextdouble()
将抛出此异常。
所以我把Java作为数学学位要求的一部分,并且偶然发现了这个代码的一个问题。本质上,代码应该从用户那里接收数字,直到他们键入零。只要只输入数字,它就可以正常工作。但是,如果用户输入一个字母或符号,程序就会得到一个异常。有没有一种简单的方法可以验证用户输入的数字而不会得到异常? 所以我已经尝试了你展示的尝试/捕捉。但我还是遇到了非数字的例外。输入代码如下:
问题内容: 我遇到一种情况(在硒测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全密码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了硒文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值
问题内容: 我有一种情况(在selenium测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全代码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了selenium文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值
我希望“请输入一个带有字母S的句子”循环,直到用户输入字母“S”
问题内容: 我正在编写一个提示输入的函数,然后根据输入返回不同的结果,然后再次要求输入。我已经得到它返回正确的值,但是我不确定如何使它再次提示输入。 这是该函数的实际代码: 在其中包含return的每一行中,它只是在调用先前定义的函数。的和是词典,前面所定义。 我只能使用内置函数。 问题答案: 我会用while循环来做。像这样:
Employee(String firstName,String lastName,String address,String phoneNum,intemployeeidnum,double wageRate,double hours); JOptionPane允许我为每个变量创建单独的输入提示窗口,但这是很多窗口。我试图在一个窗口中包含所有信息,这样用户就可以填写所有7个变量,而不必点击OK/