兩種說法或多或少做輸入的同樣的工作,一個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