728x90
반응형
SMALL
객체 배열 Class Array
: 기본 자료형 배열은 선언과 동시에 배열의 크기만큼 메모리가 할당되지만,
객체 배열의 경우엔 요소가 되는 객체의 주소가 들어갈 메모리만 할당되고(null), 각 요소 객체는 생성하여 저장해야 한다.
예제코드
- Apparel.java
public class Apparel {
int id;
String type;
int price;
public Apparel(int id, String type, int price) {
this.id = id;
this.type = type;
this.price = price;
}
}
Apparel 클래스에서 id, type, price를 매개변수로 받는 생성자를 만들어 주었다.
- ApparelArrayTest.java
public class ApparelArrayTest {
public static void main(String[] args) {
Apparel apparel1 = new Apparel(1, "neat", 28_000);
Apparel apparel2 = new Apparel(2, "dress", 45_000);
Apparel apparel3 = new Apparel(3, "t-shirt", 19_900);
Apparel apparel4 = new Apparel(4, "jacket", 73_000);
Apparel[] shoppingCart = new Apparel[5];
shoppingCart[0] = apparel1;
shoppingCart[1] = apparel2;
shoppingCart[2] = apparel3;
shoppingCart[3] = apparel4;
int totalPrice = 0;
int count = 0;
for (int i = 0; i < shoppingCart.length; i++) {
if(shoppingCart[i] != null) {
totalPrice += shoppingCart[i].price;
count++;
}
}
System.out.println("장바구니에 담긴 품목의 수 : " + count + " 개");
System.out.println("총 금액 : " + totalPrice + " 원");
}
}
Apparel 객체를 여러개 만들어 주었다.
Apparel 타입 배열(shoppingCart)에 5개 공간을 지정해줘서
각 공간에 Apparel 객체인 apparel1, 2, 3, 4를 지정해준다.
변수 totalPrice와 count를 만들어줘서
for 문에서 null 값이 아닌 값의 price를 누적시켜주고,
count는 1씩 증가시준다.
for문이 끝나고
장바구니에 담겨있는 물건의 개수를 count 로,
담겨있는 물건의 총 금액을 totalPrice 로
출력할 수 있다.
728x90
반응형
LIST
'Back-End > Java' 카테고리의 다른 글
[Back-End][Java] 28. 상속 Inheritance (1) (0) | 2021.09.10 |
---|---|
[Back-End][Java] 27. ArrayList (0) | 2021.09.09 |
[Back-End][Java] 25. 배열 Array (1) (0) | 2021.09.07 |
[Java] Gof 디자인 패턴 - 싱글톤패턴 (static 응용) (0) | 2021.09.07 |
[Java] 23. static 메서드 - 학번 생성 프로그램 만들기 (0) | 2021.09.07 |