Commit 02658e4b by Patryk Czarnik

Numerowanie i sortowanie Tadeusza

parent 6270a903
...@@ -45,6 +45,7 @@ public class PosortujTadeusza1 { ...@@ -45,6 +45,7 @@ public class PosortujTadeusza1 {
lines.sort(Collator.getInstance(new Locale("pl", "PL"))); lines.sort(Collator.getInstance(new Locale("pl", "PL")));
System.out.println("Numerowanie"); System.out.println("Numerowanie");
// Tutaj zapis ze zwykłą pętlą. Dałoby się też replaceAll, ale z podobnymi problemami, jak w wersji strumieniowej (PosortujTadeusza2)
for(int i = 0; i < lines.size(); i++) { for(int i = 0; i < lines.size(); i++) {
lines.set(i, String.format("%6d: %s", i, lines.get(i))); lines.set(i, String.format("%6d: %s", i, lines.get(i)));
} }
......
package p24_pliki;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.text.Collator;
import java.util.List;
import java.util.Locale;
import java.util.stream.Stream;
public class PosortujTadeusza2 {
static int nr = 0;
public static void main(String[] args) {
System.out.println("Startujemy");
try(Stream<String> lines = Files.lines(Paths.get("pliki/pan_tadeusz.txt"));
PrintWriter out = new PrintWriter("out/posortowane.txt")) {
lines
.map(String::strip)
.filter(s -> !s.isEmpty())
// .sorted()
.sorted(Collator.getInstance())
.map(s -> String.format("%6d: %s", ++nr, s))
.forEach(out::println);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Gotowe");
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment