我使用Java Stack遇到了一個非常棘手的問題。我在Java Stack類中發現了一個錯誤嗎?爲什麼這兩個堆棧元素不一樣?
Stack<Integer> s=new Stack(), ss=new Stack();
s.push(1024); ss.push(1024);
System.out.println(s.peek());
System.out.println(ss.peek());
System.out.println((s.peek()==ss.peek()));
System.out.println((s.peek()<ss.peek()));
System.out.println((s.peek()<=ss.peek()));
System.out.println((s.peek()!=ss.peek()));
請參閱上面的代碼。 但爲什麼輸出是這樣?
1024
1024
false
false
true
true
這是Java中的錯誤嗎?有一個幫助.... 謝謝,啓
use's.push(120); ss.push(120);'而是檢查你的程序...;)。如果您現在感到困惑,請閱讀以下內容:[爲什麼128 == 128返回false,但127 == 127在此代碼中返回true?](http://stackoverflow.com/questions/1700081/why-does-128 -128-return-false-but-127-127-return-true-in-this-code) – Tom