(Q) 다음 데이터를 요구사항에 맞게 구조화하고 출력하세요
- 새벽배송이 가능한 상품은 2500원의 배송비가 추가됨을 출력 시 표시해야 합니다
- 행사중인 상품은 가격 옆에 "행사중"이라고 출력해야 합니다
- 행사중인 상품은 가격을 10% 할인해서 출력해야 합니다
Commodity 클래스
package day09_oop.method6;
public class Commodity {
// 멤버 필드
String name;
String type;
int price;
boolean deliveryTF;
boolean eventTF;
// 세팅 멤소드
void setting(String name, String type, int price, boolean deliveryTF, boolean eventTF) {
this.name = name;
this.type = type;
this.price = price;
this.deliveryTF = deliveryTF;
this.eventTF = eventTF;
}
// 출력 메소드
void print() {
System.out.println("상품명 : " + this.name);
System.out.println("상품분류 : " + this.type);
if(this.eventTF) {
int discounted = this.price * (100 - 10) / 100;
System.out.println("판매가 : " + discounted + " (행사중)");
}
else {
System.out.println("판매가 : " + this.price);
}
System.out.print("새벽배송 : ");
if(deliveryTF) {
System.out.println("가능 (+2500원)");
}
else {
System.out.println("불가능");
}
System.out.println();
}
}
Test01
package day09_oop.method6;
public class Test01 {
public static void main(String[] args) {
// 객체 생성
Commodity a = new Commodity();
a.setting("참이슬후레쉬", "주류", 1200, true, true);
Commodity b = new Commodity();
b.setting("클라우드맥주", "주류", 3000, false, true);
Commodity c = new Commodity();
c.setting("바나나킥", "과자", 1500, false, true);
Commodity d = new Commodity();
d.setting("허니버터칩", "과자", 1200, true, false);
// 출력
a.print();
b.print();
c.print();
d.print();
}
}
'국비교육 > 국비교육 복습' 카테고리의 다른 글
Day10_oop.constructor2 : 생성자 연습 + 오버로딩 (★) (0) | 2022.08.07 |
---|---|
Day09_oop.method7 : 메소드 연습 (6) (0) | 2022.08.07 |
Day09_oop.method5 : 메소드 연습 (4) (0) | 2022.08.07 |
Day09_oop.method4 : 메소드 연습 (3) (0) | 2022.08.07 |
Day09_oop.method3 : 메소드 연습 (2) (0) | 2022.08.07 |