2009-10-19 55 views
0

我得到一個「java.lang.string不能轉換爲節點」異常。我想用一個提供toString方法轉換localRoot爲字符串,然後比較它們的,這螺帽葉無概念「大於」或「小於」,我需要導航BST ...將節點和對象與BST數據結構進行比較

int computeResult = ((Node<E>)o).compareTo(localRoot); 

其中 o是Object類型的 localRoot是類型節點 compareTo方法的需要一個節點

回答

0

字符串確實有,它具有大於和小於

一個概念的compareTo方法所以,你可以寫一行代碼爲:

int computeResult = o.toString().compareTo(localRoot.toString()); 

從Javadoc文檔的java.lang。字符串:

public int compareTo(String anotherString)

指定者:接口的compareTo可比較

參數:anotherString - 要比較的字符串 。

返回:如果參數 字符串等於此字符串,則值爲0;一個 值小於0,如果該字符串是 按字典順序小於字符串 參數;如果該字符串按字典順序大於字符串參數 ,則該值大於0 。