1
我在Java中我找出如何在一個數組或對象項目進行排序這樣的數據結構玩耍。我想要一些單詞以特定的順序,我可以使用Bufferedreader HashMap,ArrayList。我想要做的是在任何點讀出第一行42後,如果某些行是空的(即,長度爲0的字符串),則輸出所發生之前的一個42行的行。如何也可以改變這種程序來讀取在時間整個輸入一個行,然後輸出偶數行(從第一行,第0行),然後奇數lines..I張貼,我有這樣的代碼遠。數據結構來分類
public static void doIt(BufferedReader r, PrintWriter w) throws IOException {
ArrayList<String> s= new ArrayList<String>();
String line;
int n = 0;
while ((line = r.readLine()) != null) {
s.add(line);
n++;
}
Collections.sort(s);
Iterator<String> i = s.iterator();
while (i.hasNext()) {
w.println(i.next());
}
}
public static void main(String[] args) {
try {
BufferedReader r;
PrintWriter w;
if (args.length == 0) {
r = new BufferedReader(new InputStreamReader(System.in));
w = new PrintWriter(System.out);
} else if (args.length == 1) {
r = new BufferedReader(new FileReader(args[0]));
w = new PrintWriter(System.out);
} else {
r = new BufferedReader(new FileReader(args[0]));
w = new PrintWriter(new FileWriter(args[1]));
}
long start = System.nanoTime();
doIt(r, w);
w.flush();
long stop = System.nanoTime();
System.out.println("Execution time: " + 10e-9 * (stop-start));
} catch (IOException e) {
System.err.println(e);
System.exit(-1);
}
}