2015-05-15 28 views

回答

4

因爲它是瑣事般的問題,而不是真正的生產問題,那麼我認爲,Java 8是允許的。

​​

Java 6的解決辦法是這樣的:

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.util.HashSet; 
import java.util.Set; 

public class PrintUnique { 
    public static void main(String[] args) throws IOException { 
     BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
     Set<String> lines = new HashSet<String>(); 
     String line; 
     while((line = br.readLine()) != null) { 
      if(lines.add(line)) 
       System.out.println(line); 
     } 
    } 
} 
+0

這不是將整個文件一次讀入內存嗎? – Thilo

+0

當然,它在內存中存儲了獨特的線條,但重複的線條只是略過。 –

+0

(Perl解決方案只讀取內存中的不同行,但這可能沒有太大區別) – Thilo