Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import java.util.List;
- import java.util.Scanner;
- import java.util.stream.Collectors;
- public class listOperations {
- public static void main(String[] args) {
- Scanner scan = new Scanner(System.in);
- List<String> numbers = Arrays.stream(scan.nextLine()
- .split("\\s+"))
- .collect(Collectors.toList());
- String command = scan.nextLine();
- while (!"End".equals(command)) {
- String[] data = command.split("\\s+");
- int index = 0;
- if (data.length == 3) {
- index = Integer.parseInt(data[2]);
- } else if (data.length == 2) {
- index = Integer.parseInt(data[1]);
- }
- if (index < 0 || index > numbers.size()) {
- System.out.println("Invalid index");
- command = scan.nextLine();
- continue;
- }
- switch (data[0]) {
- case "Add":
- numbers.add(data[1]);
- break;
- case "Insert":
- numbers.add(index, data[1]);
- break;
- case "Remove":
- numbers.remove(index);
- break;
- case "Shift":
- if (data[1].equals("left")) {
- for (int i = 1; i <= index; i++) {
- numbers.add(numbers.get(0));
- numbers.remove(numbers.get(0));
- }
- } else if (data[1].equals("right")) {
- for (int i = 1; i <= index; i++) {
- numbers.add(0, numbers.get(numbers.size() - 1));
- numbers.remove(numbers.get(numbers.size() - 1));
- }
- }
- }
- command = scan.nextLine();
- }
- System.out.print(numbers.toString().replaceAll("[\\[\\],]", "").trim());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment