Advertisement
Guest User

ListOperations

a guest
Feb 23rd, 2019
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.List;
  3. import java.util.Scanner;
  4. import java.util.stream.Collectors;
  5.  
  6. public class ListOperations {
  7. public static void main(String[] args) {
  8. Scanner scanner = new Scanner(System.in);
  9.  
  10. List<Integer> numbers = Arrays.
  11. stream(scanner.nextLine().split(" "))
  12. .map(Integer::parseInt)
  13. .collect(Collectors.toList());
  14.  
  15. String line="";
  16.  
  17. while (!"End".equals(line=scanner.nextLine())){
  18. String[] tokens=line.split("\\s+");
  19. if(tokens[0].equals("Add")){
  20. numbers.add(Integer.parseInt(tokens[1]));
  21. }else if(tokens[0].equals("Insert")){
  22. int index=Integer.parseInt(tokens[2]);
  23. if(index>=0&&index<numbers.size()){
  24. numbers.add(index,Integer.parseInt(tokens[1]));
  25. }else {
  26. System.out.println("Invalid index");
  27. }
  28. }else if(tokens[0].equals("Remove")){
  29. int index=Integer.parseInt(tokens[1]);
  30. if(index>=0&&index<numbers.size()){
  31. numbers.remove(index);
  32. }else {
  33. System.out.println("Invalid index");
  34. }
  35. }else if(tokens[0].equals("Shift")){
  36. int count=Integer.parseInt(tokens[2]);
  37. count=count%numbers.size();
  38. if(tokens[1].equals("left")){
  39. for (int i = 0; i <count ; i++) {
  40. numbers.add(numbers.get(0));
  41. numbers.remove(0);
  42. }
  43. }else {
  44. for (int i = 0; i <count ; i++) {
  45. numbers.add(numbers.get(numbers.size()-1));
  46. numbers.remove(numbers.size()-1);
  47. }
  48. }
  49. }
  50.  
  51. }
  52. for (Integer number : numbers) {
  53. System.out.print(number+" ");
  54. }
  55. }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement