[英]Input double with dot instead of comma
我在我的程序中得到了一個輸入,期待雙倍:
Scanner in_num = new Scanner(System.in);
double num1 = in_num.nextDouble();
但是在上傳系統中它拋出異常java.util.InputMismatchException
我發現這是因為系統寫了一個點作為小數點。
Java
有沒有辦法將帶點的數字作為小數點而不是逗號?
將您的掃描儀切換到美國語言環境:
Scanner sc = new Scanner(System.in);
sc.useLocale(Locale.US);
雙 d = sc.nextDouble();
使用 Double.parseDouble():
BufferedReader reader = new BufferedReader(new inputStreamReader(System.in));
double d = Double.parseDouble(reader.readLine());
我找到了解決方案,只需要考慮一下。 我剛剛取了下一個String
並將其解析為 Double。
double num1 = Double.parseDouble(in_num.next());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.