import java.util.ArrayList;
import java.util.Scanner;

public class Planner {

    private ArrayList<String> planner = new ArrayList<String>();

    public Planner() {
        Scanner input = new Scanner(System.in);
        int choice;
        boolean proceed = true;

        while (proceed) {

            showPlanner();
            System.out.println("Enter your choice: ");
            choice = input.nextInt();

            switch (choice) {
                case 1:
                    addItem();
                    break;
                case 2:
                    addMultipleItems();
                    break;
                case 3:
                    if (!planner.isEmpty()) {
                        removeItem();
                    } else {
                        System.out.println("There's nothing to remove!");
                    }
                    break;
                case 4:
                    if (!planner.isEmpty()) {
                        planner.clear();
                    } else {
                        System.out.println("There's nothing to remove!");
                    }
                    break;
                case 5:
                    if (!planner.isEmpty()) {
                        planner.findItem();
                    } else {
                        System.out.println("There's nothing to find!");
                    }
                    break;
                case -1:
                    proceed = false;
                    break;
                default:
                    System.out.println("Please input a valid option");

            }
        }
        input.close();
    }

    public void showPlanner() {
        System.out.println("--------------------------------------");
        System.out.println("Here is your list of things to do:");
        if (!planner.isEmpty()) {
            for (int i = 0; i < planner.size(); i++) {
                System.out.println((i + 1) + ". " + planner.get(i));
            }
        } else {
            System.out.println("Your planner is empty!");
        }
        System.out.println("--------------------------------------");
        System.out.println("What would you like to do next?");
        System.out.println("1. Add an item");
        System.out.println("2. Add multiple items");
        System.out.println("3. Remove an item");
        System.out.println("4. Remove all items");
        System.out.println("5. Find item");
        System.out.println("-1. Quit");
        System.out.println("--------------------------------------");
    }

    public void addItem() {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter an item: ");
        String newItem = input.nextLine();
        planner.add(newItem);
    }

    public void addMultipleItems() {
        Scanner input = new Scanner(System.in);
        System.out.println("How many items would you like to add: ");
        int itemCount = input.nextInt();

        ArrayList<String> newItemList = new ArrayList<String>();
        for (int i = 0; i < itemCount; i++) {
            System.out.println("Enter an item: ");
            newItemList.add(input.nextLine());
        }

        planner.addAll(newItemList);
    }

    public void removeItem() {
        Scanner input = new Scanner(System.in);
        System.out.println("1. Remove by index");
        System.out.println("2. Remove by name");
        System.out.println("Select an option: ");
        int choice = input.nextInt();

        switch (choice) {
            case 1:
                System.out.println("Enter the exact index (the number next to it): ");
                int index = input.nextInt();
                planner.remove(index - 1);
                break;
            case 2:
                System.out.println("Enter the exact item (case sensitive): ");
                String trashItem = input.nextLine();
                planner.remove(trashItem);
                break;
            default:
                System.out.println("That's not an option!");
        }
    }

    public void findItem() {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter an index: ");
        int index = input.nextInt();
        try {
            System.out.println((index + 1) + ". " + planner.get(index));
        } catch (Exception e) {
            System.out.println("That index isn't in the planner!");
        }
    }

    public static void main(String[] args) {
        Planner test = new Planner();
    }
}

Planner.main(null);
--------------------------------------
Here is your list of things to do:
Your planner is empty!
--------------------------------------
What would you like to do next?
1. Add an item
2. Add multiple items
3. Remove an item
4. Remove all items
5. Find item
-1. Quit
--------------------------------------
Enter your choice: 
Enter an item: 
--------------------------------------
Here is your list of things to do:
1. Hello
--------------------------------------
What would you like to do next?
1. Add an item
2. Add multiple items
3. Remove an item
4. Remove all items
5. Find item
-1. Quit
--------------------------------------
Enter your choice: 
How many items would you like to add: 
Enter an item: 
Enter an item: 
--------------------------------------
Here is your list of things to do:
1. Hello
2. 
3. Code
--------------------------------------
What would you like to do next?
1. Add an item
2. Add multiple items
3. Remove an item
4. Remove all items
5. Find item
-1. Quit
--------------------------------------
Enter your choice: 
--------------------------------------
Here is your list of things to do:
Your planner is empty!
--------------------------------------
What would you like to do next?
1. Add an item
2. Add multiple items
3. Remove an item
4. Remove all items
5. Find item
-1. Quit
--------------------------------------
Enter your choice: 
Enter an item: 
--------------------------------------
Here is your list of things to do:
1. -1
--------------------------------------
What would you like to do next?
1. Add an item
2. Add multiple items
3. Remove an item
4. Remove all items
5. Find item
-1. Quit
--------------------------------------
Enter your choice: 

Design Process

Coming up with the idea was relatively simple. Students (especially those with 4 APs and extracurriculars) need planners to organize everything they need to do, so why not make one using Java?

I decided to go for an object-orientated design, with the creation of the object handling all of the options. An infinite while loop is used to keep iterating over the added options and the choice entry, with only the entry of "-1" breaking the loop and ending the planner.

There are 5 options (with 1 extra to end it), utilizing numerous methods in the ArrayList interface. Option 1 utilizes .add(), 2 utilizes .addAll(), 3 utilizes .remove() (both method signatures), 4 utilizes .clear(), and 5 utilizes .get().