package dataStructure;
public class MyStack {
private int top;
private Object[] stack;
public MyStack(int _size){
top=0;
stack=new Object[_size];
}
public void push(Object obj){
if(top>=space()){
System.out.println("Stack Push"+obj+" >> ERROR: Stack is fulled");
return;
}else{
stack[top]=obj;
top=top+1;
System.out.println("Stack pushed");
System.out.println(this.toString());
}
}
public Object pop(){
if(top==0){
System.out.println("Stack pop >> ERROR: Stack is empty");
return null;
}else{
top=top-1;
Object obj=new Object();
obj=stack[top];
stack[top]=null;
System.out.println("Stack Poped: "+obj);
System.out.println(this.toString());
return obj;
}
}
public int size(){
return top;
}
public int space(){
return stack.length;
}
public boolean isEmpty(){
return (top==0)?true:false;
}
public String toString(){
StringBuffer sb=new StringBuffer();
for(int i=0;i<stack.length;i++){
sb.append("["+stack[i]+"]");
}
return sb.toString();
}
public static void main(String[] args){
MyStack myStack=new MyStack(2);
myStack.push(10);
myStack.push(50);
myStack.pop();
myStack.push(7);
myStack.push(15);
myStack.push(20);
myStack.pop();
myStack.pop();
myStack.pop();
myStack.push(12);
}
}
'Java' 카테고리의 다른 글
basic Vector (0) | 2015.01.14 |
---|---|
encapsulating (0) | 2015.01.13 |
ProcessBuilder (0) | 2015.01.12 |
UrlFrame, getting the page source and save as a txt file (0) | 2015.01.06 |
URL class, figuring the page source (0) | 2015.01.06 |