# 스택: push() 구현
## 문제
주어진 뼈대코드에 `push()` 메소드를 구현하고 그 결과를 출력 예와 비교하시오.
## 동작 흐름
<div class="embed-responsive embed-responsive-16by9">
<iframe src="https://www.youtube.com/embed/BrRA6A3uayw" frameborder="0" allowfullscreen></iframe>
</div>
## 출력 예
```
| null |
| null |
| 3 | <- top
| 2 |
| 1 |
--------
```
## 뼈대코드
```
public class MyStackTest {
public static void main(String[] args) {
MyStack stack = new MyStack();
stack.push(1);
stack.push(2);
stack.push(3);
System.out.println(stack);
}
}
class MyStack {
private int[] array;
private int capacity;
private int top;
public MyStack() {
this.array = new int[5];
this.capacity = 5;
this.top = -1;
}
public void push(int data) {
/* 해당 메소드를 구현하시오. */
}
@Override
public String toString() {
StringBuffer sbuf = new StringBuffer();
for (int i = capacity - 1; i >= 0; i--) {
Integer data = (i <= top) ? array[i] : null;
sbuf.append(String.format("| %4s |%s\n", data, (i == top) ? " <- top " : ""));
}
return sbuf.append("--------\n").toString();
}
}
```