import java.util.*;public class StackL {
private LinkedList list=new LinkedList();
public void push(Object o){list.addFirst(o);}
public void pop(){list.removeFirst();}
public Object top(){ return list.getFirst();}
public boolean empty(){ return list.isEmpty();}
public int size(){return list.size();}
public static void main(String[] args) {
StackL stack1=new StackL();
stack1.push("first");
System.out.println(stack1.top());
System.out.println(stack1.size());
StackL stack2=new StackL();
stack2.push("first");
System.out.println(stack2.top());
System.out.println(stack1.size());
System.out.println(stack1.equals(stack2));
}
}上述代码我是用StackL类来实现栈,同时在main中定义了两个栈stack1和stack2,两个栈的内容一样,为何采用equals方法对两个栈进行比较时,产生的结果是false呢?不懂,请各位多多指教!
private LinkedList list=new LinkedList();
public void push(Object o){list.addFirst(o);}
public void pop(){list.removeFirst();}
public Object top(){ return list.getFirst();}
public boolean empty(){ return list.isEmpty();}
public int size(){return list.size();}
public static void main(String[] args) {
StackL stack1=new StackL();
stack1.push("first");
System.out.println(stack1.top());
System.out.println(stack1.size());
StackL stack2=new StackL();
stack2.push("first");
System.out.println(stack2.top());
System.out.println(stack1.size());
System.out.println(stack1.equals(stack2));
}
}上述代码我是用StackL类来实现栈,同时在main中定义了两个栈stack1和stack2,两个栈的内容一样,为何采用equals方法对两个栈进行比较时,产生的结果是false呢?不懂,请各位多多指教!
重新复写equals方法