본문 바로가기

전체 글191

23.06.01 개인과제에 총 매출을 출력하는 메서드를 추가해 보자. 총 매출을 출력하는 메서드를 만들기 위해 기존의 개인 장바구니를 출력하는 메서드를 재활용하려고 했으나, 기존 메서드는 상품개수를 처음에 1개로 초기화 하는 문제가 있어 조금 수정했다. public Cart(String menuName, int price) { this.menuName = menuName; this.price = price; this.count = 1; } public Cart(String menuName, int price, int count) { this.menuName = menuName; this.price = price; this.count = count; } public void addOrder(String menuName, .. 2023. 6. 1.
알고리즘 강의 Java 알고리즘 시간 복잡도 : 문제를 해결하는데 걸리는 시간 int maxInt = 0; for (int i = 0; i maxInt) { maxInt = array[i]; } } System.out.println(maxInt); 위와 같은 로직에서 변수를 할당하고, 출력하는 로직은 for문과 비교하면 무의미하기 때문에 무시하고, for문의 반복 횟수에 집중한다. 위에서는 array.lenght만큼 반복하기 때문에, array.lenght = n 이라고 한다면 위 로직은 n만큼 시간을 쓴다고 하고, big-O 표기법을 쓰면 O(n)과 같이 표기한다. O(n)은 최악의 경우(가장 오래 걸리는 경우)를 고려해서 표기한다. 공간 복잡도 :.. 2023. 6. 1.
23.05.31 장바구니를 출력하는 문제 발생 더보기 private ArrayList order; // 장바구니 생성 public Order() { order = new ArrayList(); } // 장바구니에 추가 public void addCart(String menuName, int price, int count) { for (Cart cart : order) { if (cart.getMenuName().equals(menuName)) { // 만약 같은 이름의 메뉴가 이미 있다면 개수만 +1 cart.plusCount(); return; } } order.add(new Cart(menuName, price, count)); } // 장바구니 출력 public void printCart() { for (Cart .. 2023. 5. 31.
23.05.30 kioskmaking2 패키지를 만들어 어제 만들었던 메뉴, 제품, 주문 클래스를 옮긴 후 기존에 있던 기능들을 하나씩 옮기는 작업을 진행할 예정 "%-10s | %s\n 위 코드를 통해 각 메뉴를 정렬하려고 했으나 한글은 글자당 1.8칸 정도의 크기를 가져 위와 같은 방법으로는 제대로 된 정렬이 힘들다. 어떤 메뉴를 출력할지 말해주는 메서드 생성 public void menuBar(String menu) { System.out.println("MegaCoffee에 오신 것을 환영합니다!!"); System.out.println("아래에서 메뉴판을 보고 주문하실 메뉴를 골라주세요!\n"); System.out.println("[" + menu + " 메뉴]"); } 메뉴 아래 주문 확인 출력 메서드 생성.. 2023. 5. 30.