2016-08-01 176 views
0

双扫描仪用在Java中我想从标准输入读取双号,但我总是得到这样的例外:从控制台

java.util.InputMismatchException

import java.util.Scanner; 

public class ScanDouble { 

    public static void main(String[] args) { 
     Scanner scan = new Scanner(System.in); 
     double d = scan.nextDouble(); 
     System.out.println("Double: " + d); 
    } 
} 

如果输入是整数,没关系,但是当双输入时,我得到异常。

在java.util.Scanner.next(Scanner.java:1485)在线程 “主” java.util.InputMismatchException 在java.util.Scanner.throwFor(Scanner.java:864) 异常 在java.util.Scanner.nextDouble(Scanner.java:2413) 在ScanDouble.main(ScanDouble.java:10)

+1

请问你输入什么样子的? – Flown

+1

你的输入是什么,什么是例外? –

+0

我的意见是这样的:10.0 上面显示了异常。 – PyVas

回答

3

认为这是与小数分隔的问题。尝试输入10,0

如果您希望扫描点的值,场景设置成语言环境UK:

Scanner scan = new Scanner(System.in); 
scan.useLocale(Locale.UK); 
double d = scan.nextDouble(); 
System.out.println("Double: " + d);