발전을 위한 기록

[Java] 자바로 간단한 투두리스트 만들기 본문

프로그래밍/자바

[Java] 자바로 간단한 투두리스트 만들기

릴릴2 2024. 1. 3. 22:37

사용자가 할 일을 추가하고 목록을 조회할 수 있는 간단한 할일 목록 관리 프로그램입니다!

 

설명은 주석을 참고해주세요!

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

public class TodoListManager {
    public static void main(String[] args) {
        // Scanner 객체를 생성하여 사용자 입력을 받기 위해 사용
        Scanner scanner = new Scanner(System.in);

        // 할 일 목록을 저장할 ArrayList
        ArrayList<String> todoList = new ArrayList<>();

        // 사용자에게 명령을 받아 프로그램 실행
        while (true) {
            System.out.println("\n할 일 목록 관리 프로그램");
            System.out.println("1. 할 일 추가");
            System.out.println("2. 할 일 목록 조회");
            System.out.println("3. 종료");
            System.out.print("원하는 기능의 번호를 입력하세요: ");

            // 사용자 입력이 있는지 확인
            if (scanner.hasNextLine()) {
                // 사용자가 입력한 문자열을 가져옴
                String input = scanner.nextLine();

                // 정규표현식을 사용하여 숫자로만 이루어져 있는지 확인
                if (input.matches("\\d+")) {
                    // 정수로 변환하여 사용자가 선택한 기능 번호로 분기
                    int choice = Integer.parseInt(input);

                    switch (choice) {
                        case 1:
                            // 할 일 추가 기능
                            System.out.print("추가할 할 일을 입력하세요: ");
                            String newTodo = scanner.nextLine();
                            todoList.add(newTodo);
                            System.out.println("할 일이 추가되었습니다.");
                            break;
                        case 2:
                            // 할 일 목록 조회 기능
                            if (todoList.isEmpty()) {
                                System.out.println("할 일이 없습니다.");
                            } else {
                                System.out.println("할 일 목록:");

                                // 할 일 목록을 순회하면서 출력
                                for (int i = 0; i < todoList.size(); i++) {
                                    System.out.println((i + 1) + ". " + todoList.get(i));
                                }
                            }
                            break;
                        case 3:
                            // 프로그램 종료 기능
                            System.out.println("프로그램을 종료합니다.");
                            scanner.close();
                            System.exit(0);
                            break;
                        default:
                            // 잘못된 입력 처리
                            System.out.println("잘못된 입력입니다. 다시 시도하세요.");
                            break;
                    }
                } else {
                    // 사용자가 입력한 문자열이 숫자로만 구성되어 있지 않은 경우
                    System.out.println("숫자를 입력하세요.");
                }
            } else {
                // 입력이 없는 경우
                System.out.println("입력이 없습니다. 다시 시도하세요.");
            }
        }
    }
}
  • ArrayList<String> todoList: 할일 목록을 저장하기 위한 ArrayList를 선언합니다.
  • while (true): 사용자가 종료를 선택할 때까지 무한 루프로 프로그램이 실행됩니다.
  • 사용자가 선택한 번호에 따라서 switch문으로 분기하여 기능을 실행합니다.

프로그램을 실행하면 사용자는 할일을 추가하거나 목록을 조회할 수 있습니다.

 


출력결과

728x90