이번에는 자신이 구입을 한 목록을 테이블로 작성해서 영수증을 만들어 보는 연습 소스코드입니다.
상품명 수량 단가 금액
-------------------------------------------
1 초코랫 3 1000 3000
2 케이크 1 15000 15000
3 삼페인 1 23000 23000
4 꽃다발 1 500000 500000
--------------------------------------------
총계 = 541000
메인소스 코드
public class nestedclassexample
{
public static void main(String args[])
{
Cart cart = new Cart();
cart.addItem("초코랫",3, 1000);
cart.addItem("케이크",1, 15000);
cart.addItem("삼페인",1, 23000);
Cart.Item item = cart.new Item("꽃다발",1,500000); //이것을기본으로 만든 테이블에 추가를 하는 소스코드입니다.
cart.list.add(item);
printCart(cart);
}
static void printCart(Cart cart)
{
int num = cart.getItemNum();
System.out.println(" 상품명 수량 단가 금액");
System.out.println("-------------------------------------------");
for(int cnt=0; cnt < num;cnt++)
{
Cart.Item item = cart.getItem(cnt);
System.out.printf("%3d %5s %5d %7d %7d %n",cnt+1, item.name, item.num, item.unitPrice, item.getPrice());
}
System.out.println("--------------------------------------------");
System.out.printf(" 총계 = %10d %n",cart.getTotalPrice());
}
}
클래스 소스코드
import java.util.ArrayList;
class Cart
{
ArrayList<Item>list = new ArrayList<Item>();
void addItem(String name, int num, int unitPrice)
{
list.add(new Item(name, num, unitPrice));
}
void removeItem(int index)
{
list.remove(index);
}
int getItemNum()
{
return list.size();
}
Item getItem(int index)
{
return list.get(index);
}
int getTotalPrice()
{
int total = 0;
for(Item item : list)
total += item.getPrice();
return total;
}
void chnageItemNumber(int index, int num)
{
Item item = list.get(index);
item.num = num;
}
class Item
{
String name;
int num;
int unitPrice;
Item(String name, int num, int unitPrice)
{
this.name= name;
this.num= num;
this.unitPrice=unitPrice;
}
int getPrice()
{
return num * unitPrice;
}
}
}
'코딩' 카테고리의 다른 글
AI로 만든 명함 만들기 파이썬 사용 (55) | 2024.06.01 |
---|---|
블로그에 배너 넣기~~! 게임회사도 사용 한다는 그것~~! (11) | 2021.02.16 |
데이터의 바다를 모르면 데이터베이스 원피스를 찾지마라 ~! (1) | 2020.12.11 |