1.栈操作
- package Source;
- import java.util.LinkedList;
- //用List定义一个栈
- public class Stack
- {
- //构造方法
- public Stack()
- {
- list = new LinkedList();
- isEmpty = true;
- }
- //入栈
- public void push(Object node)
- {
- list.add(node);
- if(isEmpty) isEmpty = false;
- }
- //出栈
- public Object pop()
- {
- if(!isEmpty)
- {
- Object node = list.getLast();
- list.removeLast();
- if(list.size() == 0) isEmpty = true;
- return node;
- }
- else return null;
- }
- //获取栈顶元素
- public Object getTop()
- {
- if(!isEmpty) return list.getLast();
- else return null;
- }
- //获取栈的元素个数
- public int getSize()
- {
- return list.size();
- }
- //获取指定元素
- public Object getElement(int index)
- {
- int size = getSize();
- if(index < 0 || index > size) return null;
- else return list.get(index);
- }
- //删除元素
- public void remove(int index)
- {
- list.remove(index);
- }
- //置栈空
- public boolean empty()
- {
- return isEmpty;
- }
- //打印栈内元素
- public void print()
- {
- int size = list.size();
- for(int i = size - 1; i >= 0; i--)
- System.out.print((new StringBuilder(String.valueOf(list.get(i).toString()))).append(" ").toString());
- }
- private LinkedList list;
- private boolean isEmpty;
- }
2.符号集合
- package Source;
- //定义一些需特殊处理的html标识
- public class Symbol
- {
- public static String jump[] =
- {
- "span", "select", "script", "h", "ul", "li", "TEXTAREA", "style"
- };
- public static String ignore[] =
- {
- "/p", "br", "form", "/form", "param", "/img", "p", "img", "hr", "!",
- "input"
- };
- public static String remove[] =
- {
- " ", ">"
- };
- }