Advertisement
Guest User

ListManipulatorAdvanced

a guest
Feb 23rd, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. package JavaTechModul.ArrayList.LabArrayList;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.Scanner;
  7. import java.util.stream.Collectors;
  8.  
  9. public class listManipulationAdvanced {
  10. public static void main(String[] args) {
  11. Scanner scan = new Scanner(System.in);
  12.  
  13. List<Integer> numbers = Arrays.stream(scan.nextLine().split(" "))
  14. .map(Integer::parseInt)
  15. .collect(Collectors.toList());
  16. String input = "";
  17. while (!"end".equals(input = scan.nextLine())) {
  18. String[] arraY = input.split(" ");
  19.  
  20. switch (arraY[0]) {
  21. case "Contains":
  22. if (numbers.contains(Integer.parseInt(arraY[1]))) {
  23. System.out.println("Yes");
  24. } else {
  25. System.out.println("No such number");
  26. }
  27. break;
  28. case "Print":
  29. List<Integer> newList = new ArrayList<>();
  30. if (arraY[1].equals("even")) {
  31. newList = numbers.stream().filter(e -> e % 2 == 0).collect(Collectors.toList());
  32. } else {
  33. newList = numbers.stream().filter(e -> e % 2 != 0).collect(Collectors.toList());
  34. }
  35. System.out.println(newList.toString().replaceAll("[\\[,\\]]", ""));
  36. break;
  37. case "Get":
  38. System.out.println(numbers.stream().mapToInt(Integer::intValue).sum());
  39. break;
  40. case "Filter":
  41. List<Integer> newNumbers = new ArrayList<>();
  42. if (arraY[1].equals("<")) {
  43.  
  44. newNumbers = numbers.stream().filter(e -> e < Integer.parseInt(arraY[2]))
  45. .collect(Collectors.toList());
  46. } else if (arraY[1].equals(">")) {
  47. newNumbers = numbers.stream().filter(e -> e > Integer.parseInt(arraY[2]))
  48. .collect(Collectors.toList());
  49. } else if (arraY[1].equals("<=")) {
  50. newNumbers = numbers.stream().filter(e -> e <= Integer.parseInt(arraY[2]))
  51. .collect(Collectors.toList());
  52. } else if (arraY[1].equals(">=")) {
  53. newNumbers = numbers.stream().filter(integer -> integer >= Integer.parseInt(arraY[2]))
  54. .collect(Collectors.toList());
  55. }
  56. System.out.println(newNumbers.toString().replaceAll("[\\[,\\]]", ""));
  57. break;
  58. }
  59.  
  60. }
  61.  
  62. }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement