#장바구니 총합 ## CODE <a class='btn btn-default' href='/codes/6985'>Link</a> ``` import java.util.ArrayList; public class TotalPrice { public static void main(String[] args) { /* 1. 구매 상품 객체를 생성하세요. */ Item shirt = new Item("스트라이프 셔츠", 49900); Item pants = new Item("슬림 면바지", 58900); Item shoes = new Item("스니커즈", 46900); /* 2. 장바구니에 상품을 담으세요. */ Cart myCart = new Cart(); myCart.add(shirt); myCart.add(pants); myCart.add(shoes); // 총합 출력 System.out.printf("총합: %d원", myCart.totalPrice()); } } class Cart { private ArrayList<Item> list; public Cart() { this.list = new ArrayList<Item>(); } public void add(Item item) { list.add(item); } /* 3. 전체 금액 합계 메소드를 완성하시오. */ public int totalPrice() { int sum = 0; for (int i = 0; i < list.size(); i++) { Item temp = list.get(i); sum += temp.getPrice(); } return sum; } } class Item { private String name; private int price; public Item(String name, int price) { this.name = name; this.price = price; } public int getPrice() { return price; } } ``` ## INPUT ``` ``` ## OUPUT ``` 총합: 155700원 ``` 여기 문제의 코드를 보면 cart클래스안에 arraylist를 만들어서 하는데 굳이 이렇게안해도 메인클래스에서 arraylist만들어서 list.add(new Item("스트라이프",49900)); 하면되는데 이렇게 사용하는이유가있을까요!
# Cart 클래스를 추가로 만든 이유 크게 세 가지 이유가 있습니다. 1. 여러개의 클래스를 사용하는 연습을 위해 2. ArrayList에는 `totalPrice()` 메소드가 없기 때문에 3. main 메소드를 최대한 간결하게 작성하기 위해