JAVA/자바 문제
스텍을 이용한 동전통 만들기 (Stack)LIFO
해병1188기
2018. 3. 22. 20:44
728x90
반응형
Stack 을 이용하여 동전통 만들기
Stack<E> Stack =new Stack<E>();
push() 주어진 객체를 스텍에 넣는다
pop() 스택의 맨위 객체를 가져온다
동전 클래스 (Coin class)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | package SQ; public class Coin { private int value; // value 동전의 가격 public Coin(int value) {//생성자 생성 this.value = value; } public int getValue() {//get 메소드 만들어준다 return value; } } | cs |
메인 클래스
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | package SQ; import java.util.Stack; public class StackExample { public static void main(String[] args) { //Stack컬렉션// Stack<Coin> coinBox = new Stack<Coin>(); // 동전을 저장 하기때문에 제너릭파나미트로 Coin 쓴다 //동전통을 coinBox로 변수 선언 coinBox.push(new Coin(100));// 동전을 넣는다// coinBox.push(new Coin(50)); coinBox.push(new Coin(500)); coinBox.push(new Coin(10));// 마지막에 추가 된것이 나온다 //동전 빼기 while(!coinBox.isEmpty()) {//동전 통에서 가져 올게 있으면 트루 없으면 거짓 Coin coin = coinBox.pop(); // POP 객체를 가져온다 System.out.println("꺼내온 동전:"+coin.getValue()+"원"); } } } | cs |
<출력값>
1 2 3 4 5 | 꺼내온 동전:10원 꺼내온 동전:500원 꺼내온 동전:50원 꺼내온 동전:100원 | cs |
결론 : 이 예제를 통하여 후입 선출 LIFO는 나중에 들어온 객체가 먼저나간다는 것과
동전을 저장 하기때문에 제너릭 파나미트터로 Coin 쓴다 제너릭을 이용 하여 코드를 만들수있다
728x90
반응형