两种说法或多或少做输入的同样的工作,一个int比较
int foo = new Scanner(System.in).nextInt();
和
int bar = Integer.parseInt(new Scanner(System.in).next());
他们之间有任何性能差异.. ??? ????????
两种说法或多或少做输入的同样的工作,一个int比较
int foo = new Scanner(System.in).nextInt();
和
int bar = Integer.parseInt(new Scanner(System.in).next());
他们之间有任何性能差异.. ??? ????????
我真的不认为你应该在效率方面思考,特别是因为你似乎使用它作为局部变量,并且在任何情况下都丢弃(新创建的)Scanner
。
但是,如果它仍然感兴趣,我想说的性能差异可以忽略不计,因为Scanner.nextInt
与
return Integer.parseInt(s, radix);
反正结束。
如果你需要分析几个整数,我会说,最好的方式来创建一个Scanner
一次,并重新使用该实例:
Scanner scanner = new Scanner(System.in);
int foo = scanner.nextInt();
int bar = scanner.nextInt();
// ...
需要眨眼的时间约为50毫秒。按下按键的时间大致相同。这些声明之间的差异将远远小于这个,并且将小于0.002毫秒。
总之,我不会担心它。使它正确,清晰和简单,而且这通常也是最快的。
如果您遇到性能问题,请尝试使用扫描仪的替代方法。 – Roalt 2011-05-10 11:36:48