#장바구니 총합
## 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)); 하면되는데 이렇게 사용하는이유가있을까요!
sehongpark님의 답변
# Cart 클래스를 추가로 만든 이유
크게 세 가지 이유가 있습니다.
1. 여러개의 클래스를 사용하는 연습을 위해
2. ArrayList에는 `totalPrice()` 메소드가 없기 때문에
3. main 메소드를 최대한 간결하게 작성하기 위해