私はBSTプログラムを作成しています。バイナリ演算子 ">"のオペランドタイプが正しくありませんか?
"バイナリ演算子のための悪いオペランドタイプ ">"
第一のタイプ:java.lang.Objectの
第二のタイプ:java.lang.Objectの" これは
私はエラーを取得しますそれは私にエラーを与える方法:
public void placeNodeInTree(TreeNode current, TreeNode t)
{
if(current == null)
current = t;
else{
if(current.getValue() > t.getValue())
current.setRight(t);
if(current.getValue() < t.getValue())
current.setLeft(t);
}
}
のgetValue()オブジェクトの戻り値の型、これjava.lang.Objectのタイプがあります。私がこのエラーを見たのは今回が初めてです。誰も私にこのエラーの背景を教えてもらえますか?ありがとう
これらのオブジェクトには、「オブジェクト」親しか共通していませんか?そうであれば、実際の比較はできません。クラスの実際のタイプ(たとえばinstanceofを使用)を試してみて、その後比較してみてください。または、getValue()をリファクタリングして、[Comparable](http://docs.oracle.com/javase/6/docs/api/java/lang/Comparable)を使用して何かを返すようにしてください。html)、[Comparator](http://docs.oracle.com/javase/6/docs/api/java/util/Comparator.html)を使用してください。 –