본문 바로가기
Spring-Java/Java

Day10_class 예제

by 현대타운301 2023. 8. 28.

2023.08.25

 

 

예제

 

source code

package day10;

public class Product {
	// 필드
	private String name;
	private int price;
	private int no;
	private static int num = 100;
	
	// 생성자
	public Product() {
		no = num++;
	}
	

	// 메소드
	public int getNo() {
		return no;
	}
	
	public void setNo(int no) {
		this.no = no;
	}
	
	public String getName() {
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	public int getPrice() {
		return price;
	}
	
	public void setPrice(int price) {
		this.price = price;
	}
	
	
	public void print() {
		System.out.printf("%d\t%s\t%,d원\n", no, name, price);
	}

}

package day10;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class ProductMain {
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		Scanner sc = new Scanner(System.in);
		List<Product> list_1 = new ArrayList<Product>();
		List<String> list_2 = new ArrayList<String>();
		int expand = 0;

		while (true) {
			System.out.println("===================[사간지shop]===================");
			System.out.println("1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료");
			System.out.print("메뉴선택 > ");
			int menu = sc.nextInt();

			if (menu == 1) {
				Product p = new Product();
				System.out.print("상품 이름 > ");
				p.setName(sc.next());
				System.out.print("상품 가격 > ");
				p.setPrice(sc.nextInt());
				System.out.println("상품 등록 완료!");
				list_1.add(p);

			} else if (menu == 2) {
				System.out.println("상품번호\t상품이름\t가격");
				System.out.println("=============================");
				for (Product a : list_1) {
					a.print();
				}
			} else if (menu == 3) {
				boolean find = false;
				System.out.println("상품번호\t상품이름\t가격");
				System.out.println("=============================");
				for (int i = 0; i < list_1.size(); i++) {
					list_1.get(i).print();
				}
				System.out.print("구매할 상품 번호를 입력하세요 : ");
				int inputNo = sc.nextInt();
				for (int i = 0; i < list_1.size(); i++) {
					if (inputNo == list_1.get(i).getNo()) {
						System.out.println(list_1.get(i).getName() + " 구매완료!");
						expand += list_1.get(i).getPrice();
						list_2.add(list_1.get(i).getName());
						find = true;
						break;
					}
				}
				if (!find) {
					System.out.println("없는 상품입니다...");
				}
			} else if (menu == 4) {
				boolean find = false;
				System.out.print("삭제 할 상품 번호 > ");
				int inputNum = sc.nextInt();
				for (int i = 0; i < list_1.size(); i++) {
					if (inputNum == list_1.get(i).getNo()) {
						list_1.remove(i);
						System.out.println("삭제 완료!");
						find = true;
						break;
					}
				}
				if (!find) {
					System.out.println("없는 상품입니다...");
				}
			} else if (menu == 5) {
				System.out.println("[지출금액]:" + expand + "원");
				for (String l : list_2) {
					System.out.println(l);
				}
			} else if (menu == 0) {
				System.out.println("프로그램 종료...");
				break;
			}
		} sc.close();
	}
}

 

실행결과

===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 1
상품 이름 > a
상품 가격 > 10000
상품 등록 완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 1
상품 이름 > b
상품 가격 > 5000
상품 등록 완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 1
상품 이름 > c
상품 가격 > 9900
상품 등록 완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 2
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
102	c	9,900원
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 3
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
102	c	9,900원
구매할 상품 번호를 입력하세요 : 99
없는 상품입니다...
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 3
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
102	c	9,900원
구매할 상품 번호를 입력하세요 : 100
a 구매완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 3
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
102	c	9,900원
구매할 상품 번호를 입력하세요 : 101
b 구매완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 3
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
102	c	9,900원
구매할 상품 번호를 입력하세요 : 102
c 구매완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 5
[지출금액]:24900원
a
b
c
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 4
삭제 할 상품 번호 > 102
삭제 완료!
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 2
상품번호	상품이름	가격
=============================
100	a	10,000원
101	b	5,000원
===================[사간지shop]===================
1.상품등록 2.리스트 3.상품구매 4.상품삭제 5.구매내역 0.종료
메뉴선택 > 0
프로그램 종료...