Advertisement
Kancho

Manipulate_List

Apr 28th, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.49 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.stream.Collectors;
  7.  
  8. public class List_Operations {
  9.  
  10. public static void main(String[] args) throws IOException {
  11.  
  12. BufferedReader reader =
  13. new BufferedReader(
  14. new InputStreamReader(System.in));
  15.  
  16. System.out.println("Enter some numbers ");
  17.  
  18. List<String> elements = Arrays.stream(reader.readLine().split("\\s+"))
  19. .collect(Collectors.toList());
  20.  
  21. System.out.println("Enter command ");
  22. String input = " ";
  23.  
  24. while (!"end".equalsIgnoreCase(input = reader.readLine())) {
  25.  
  26. String[] data = input.split("\\s+");
  27.  
  28. String command = data[0];
  29.  
  30. switch (command) {
  31. case "Add":
  32. elements.add(data[1]);
  33.  
  34. break;
  35.  
  36. case "Insert":
  37. String number = data[1];
  38. int index = Integer.parseInt(data[2]);
  39. if (0 <= index && index < elements.size()) {
  40. elements.add(index, number);
  41.  
  42. } else {
  43. System.out.println("Invalid index");
  44. }
  45.  
  46. break;
  47.  
  48. case "Remove":
  49. index = Integer.parseInt(data[1]);
  50. if (0 <= index && index < elements.size()) {
  51. elements.remove(index);
  52.  
  53. } else {
  54. System.out.println("Invalid index");
  55. }
  56.  
  57. break;
  58.  
  59. case "Shift":
  60. int count = Integer.parseInt(data[2]);
  61. if (data[1].equals("left")) {
  62.  
  63. for (int i = 0; i < count % elements.size(); i++) {
  64. elements.add(elements.get(0));
  65. elements.remove(0);
  66. }
  67.  
  68. } else {
  69. for (int i = 0; i < count % elements.size(); i++) {
  70. elements.add(0, elements.get(elements.size() - 1));
  71. elements.remove(elements.size() -1);
  72.  
  73. }
  74.  
  75. }
  76.  
  77. break;
  78. }
  79.  
  80. }
  81. System.out.println(elements.toString().replaceAll("[\\[,\\]]", " "));
  82. }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement