Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- import java.util.stream.Collectors;
- public class ContactList {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- List<String> contacts = Arrays.stream(scanner.nextLine().split(" ")).collect(Collectors.toList());
- while (true) {
- String[] tokens = scanner.nextLine().split(" ");
- String command = tokens[0];
- switch (command) {
- case "Add": {
- String name = tokens[1];
- int index = Integer.parseInt(tokens[2]);
- if (contacts.contains(name)) {
- if (isValidIndex(contacts, index)) {
- contacts.add(index, name);
- }
- } else {
- contacts.add(name);
- }
- break;
- }
- case "Remove": {
- int index = Integer.parseInt(tokens[1]);
- if (isValidIndex(contacts, index)) {
- contacts.remove(index);
- }
- break;
- }
- case "Export": {
- int index = Integer.parseInt(tokens[1]);
- int count = Integer.parseInt(tokens[2]);
- int maxValue = index + count;
- if (maxValue > contacts.size()) {
- maxValue = contacts.size();
- }
- for (int i = index; i < maxValue; i++) {
- System.out.print(contacts.get(i) + " ");
- }
- System.out.println();
- break;
- }
- case "Print": {
- switch (tokens[1]) {
- case "Normal": {
- System.out.print("Contacts: ");
- System.out.println(String.join(" ", contacts));
- return;
- }
- case "Reversed": {
- Collections.reverse(contacts);
- System.out.print("Contacts: ");
- System.out.println(String.join(" ", contacts));
- return;
- }
- }
- break;
- }
- }
- }
- }
- private static boolean isValidIndex(List<String> contacts, int index) {
- return 0 <= index && index < contacts.size();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement