Guest User

Untitled

a guest
Jun 18th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.stream.IntStream;
  4.  
  5. public class Main {
  6. public static void main(String[] args) {
  7. String s;
  8. //------------------------- simple = parallel (last two parameters are doing effectively the same)
  9. s = ints()
  10. .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append).toString();
  11. System.out.println(s); //result: 12345
  12.  
  13. s = ints()
  14. .parallel()
  15. .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append).toString();
  16. System.out.println(s); //result: 12345
  17.  
  18. //------------------------- same, but method ref-s replaced with lambdas (extracted to full)
  19. s = ints()
  20. .parallel() //doesn't matter here
  21. .collect(StringBuilder::new, (StringBuilder stringBuilder, int obj) -> stringBuilder.append(obj),
  22. (StringBuilder stringBuilder, StringBuilder s1) -> stringBuilder.append(s1)).toString();
  23. System.out.println(s); //result: 12345
  24.  
  25.  
  26. //------------------------- more interesting (changing last two parameters)
  27. s = ints()
  28. .parallel()
  29. .collect(StringBuilder::new, (StringBuilder stringBuilder, int obj) -> stringBuilder.append(obj + "l☻l"), //works only once
  30. (StringBuilder stringBuilder, StringBuilder s1) -> stringBuilder.append("-L☺L-")).toString(); //now matters (with parallelism)
  31. System.out.println(s); //result: 1l☻l-L☺L--L☺L-
  32.  
  33. s = ints()
  34. .collect(StringBuilder::new, (StringBuilder stringBuilder, int obj) -> stringBuilder.append(obj),
  35. (StringBuilder stringBuilder, StringBuilder s1) -> stringBuilder.append("-L☺L-")).toString(); //plays no role AT ALL !!!!!!! (fuck, why it's here then)
  36. System.out.println(s); //result: 12345
  37. }
  38. private static IntStream ints() {
  39. return IntStream.range(1, 6);
  40. }
  41. }
Add Comment
Please, Sign In to add comment