谁能解释一下为啥 一定要用 equals(),难道测试用例中有空值嘛,搞得纳闷了半天,还在评论区找到的原因:
public boolean isPail (ListNode head) {
Stack<integer> begin = new Stack<>();
while(head != null){
begin.push(head.val);
head = head.next;
}
Stack<integer> over = new Stack<>();
boolean isOdd = begin.size()%2 != 0;
for(int i = 0,length = begin.size()/2;i < length;i++){
over.push(begin.pop());
}
if(isOdd){
begin.pop();
}
while(begin.size() != 0){
if(!begin.pop().equals(over.pop())){
return false;
}
}
return true;
}
}</integer></integer>