4, 5, 6 입력) 실행 방지. Arrays.sort()와 StringBuilder를 활용한 내림차순 정렬. viewCart()를 활용하여 장바구니 상태 출력.order()에서 사용자 유형별 할인 적용 기능 추가 예정.removeCart()에서 Stream API를 사용하여 특정 상품을 효율적으로 제거.4, 5, 6 입력 시 예외가 발생하지 않음. public void cart(int numinput, Scanner sc){
if(cart.isEmpty() && (numinput == menus.size() + 1 || numinput == menus.size() + 2 || numinput == menus.size() + 3)){
throw new IllegalStateException("올바른 숫자를 입력해주세요");
}
if (numinput == menus.size() + 1) {//메뉴 추가 대비 하드코딩X
System.out.println("구매창으로 이동합니다.");
order(sc);
} else if (numinput == menus.size() + 2){
cart.clear();
System.out.println("장바구니를 비웠습니다.");
} else if (numinput == menus.size() + 3){
System.out.println("삭제 하실 제품을 선택해주세요");
removeCart(sc);
} else {
System.out.println("입력값을 확인해 주세요");
}
}
try {
cart(numinput, sc);
} catch (IllegalStateException e) {
System.out.println(e.getMessage());
}
4, 5, 6 입력 시 IllegalStateException 발생.String을 char[]로 변환 후 Arrays.sort() 적용 → 정렬 후 뒤집는 방식 사용.다음 학습 목표