我需要讀取一個文本文件中存儲在一行中的數組。 什麼我做的到現在爲止是這樣的:在Java中輸入數組的最有效方法是什麼?
BufferedReader in = /*hook it to the file input stream via an InputStreamReader */
String[] input = in.readLine().split(" ");
for (int i = 0; i < input.length; i++)
array[i] = Integer.parseInt(input[i]);
這裏,使用String數組很不必要的。我怎樣才能消除這個冗餘步驟?
這是一個災難性的性能問題嗎?你想避免使用'String#split'? – Gamb 2013-05-03 20:21:01
讀取磁盤上的文件比分割字符串要慢幾個數量級,實例化一個String數組並將每個元素轉換爲Integer。這樣做你不會獲得任何重要的結果。這就好比使用跑鞋在2000英里的行程之後將你的車10米走到你家。不成熟的優化是萬惡之源。使用乾淨且可維護的代碼,只在必要時進行優化,並在必要時進行優化。 – 2013-05-03 20:33:45