Java学习—模拟数据压栈出栈
import java.util.LinkedList;
import java.util.Scanner;
public class StackDemo<E>{
static Scanner in = new Scanner(System.in);
public static void main(String[] args) {
System.out.println("输入你的数据:(以 end 作为结束)");
String str = "";
SStact<String> ss = new SStact<String>();
while(!"end".equalsIgnoreCase(str)) {
str = in.nextLine();
if(!"end".equalsIgnoreCase(str)) {
System.out.println("压栈:");
System.out.println(ss.push(str));
}
}
System.out.println("出栈:");
while(!ss.isEmpty()) {
System.out.println(ss.pop());
}
}
}
class SStact<E>{
private LinkedList<E> llist = new LinkedList<E>();
public E push(E e) {
llist.addFirst(e);
return llist.peekFirst();
}
public E pop() {
return llist.removeFirst();
}
public boolean isEmpty() {
return llist.isEmpty();
}
}