我只想计算这两个双变量,但是在输入第一个变量值后它会粘住。 对不起这个简单的问题,但我是初学者,谢谢你知道和时间的人!!
import java.util.Scanner;
class apples {
public static void main(String args[]){
Scanner vaclovass = new Scanner(System.in);
double fnum, snum, answer;
System.out.println("Enter first num: ");
fnum = vaclovass.nextDouble();
System.out.println("Enter second num: ");
snum = vaclovass.nextDouble();
answer = fnum + snum;
System.out.println(answer);
}
}
问题
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at apples.main(apples.java:8)
答案 0 :(得分:0)
你可能没有进入" double"像2.5或3.56677。看看这个:stackoverflow.com/questions/14027537 /
答案 1 :(得分:0)
抛出java.util.InputMismatchException
(在第8行),因为您输入控制台的输入与类型不匹配。例如:
fnum = vaclovass.nextDouble(); //assumes you input a double value, eg. 3.1, 3d, 39, 3294.39234 etc...
如果您打印3,4或hello
,则会发生错误注意:您的问题最有可能发生在那里,您可能使用了逗号而不是小数符号(,或。)
如果输入两个double值,这应该有效。这是一个示例输入(控制台):
Enter first num:
391.2 //first input
Enter second num:
3.2d //second input
394.4 //this is your output (added answer)
答案 2 :(得分:0)
可能问题在于您输入的数字。由于它们是双变量,因此它们必须具有浮点。换句话说,如果要输入数字3,则必须输入3.0。我猜你输入的数字不是文字。