몇 가지 질문을 살펴 보았지만 좋은 해결책을 찾을 수없는 것 같습니다.스레드 "main"의 예외 java.util.InputMismatchException. 스캐너 클래스
난 그냥 작동하지 않을 아주 간단한 코드가 있습니다. 사용자의 체중과 신장을 구한 다음 BMI를 계산합니다.
내가 입력 한 값은 매번 다릅니다. 하지만 변수 vikt는 85, 변수 langd는 1.80이라고 말할 수 있습니다. a 대신 a를 사용할 때 작동합니다. 그래도. 다음 오류가 발생합니다.
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextDouble(Scanner.java:2413)
at Labb2.BMI.main(BMI.java:32)
C:\Users\Danne\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 5 seconds)
내가 사용하는 코드는 다음과 같습니다.
package Labb2;
import java.util.Scanner;
public class BMI {
public static void main(String[] args) {
Scanner viktObj = new Scanner(System.in);
Scanner langdObj = new Scanner(System.in);
double vikt;
double langd;
double bmi;
System.out.print("Ange din vikt: ");
vikt = viktObj.nextDouble();
System.out.print("Ange din längd i meter (ex. 1.70): ");
langd = langdObj.nextDouble();
bmi = vikt/(langd * langd);
System.out.printf("Ditt BMI är: %.2f", bmi);
System.out.println("");
}
}
나를 위해 작동합니다. 당신은 어떤 가치를 제공 했습니까? BTW에는 두 개의 스캐너가 필요하지 않습니다. 하나를 사용하여 콘솔에서 모든 데이터를 읽으십시오. – Pshemo
먼저 사용자로부터 입력을 읽기 위해 두 개의 개별 스캐너 객체가 필요하지 않습니다. 입력하는 숫자가 이중 값이 아니기 때문에 오류가 발생합니다. –
게시물을 편집하고이 예외의 원인이 된 입력 데이터를 표시하십시오. –