0
爲什麼DefaultMutableTreeNode中有isRoot()函數?我問,因爲我有一個擴展DefaultMutableTreeNode的類。我希望能夠在多個不同的JTree對象中使用此類的單個實例。然而,似乎isRoot()是我應該問樹對象本身的一個問題。任何人都可以提供任何有關爲什麼此功能存在於節點級而不是樹級的見解嗎?DefaultMutableTreeNode中的isRoot()
爲什麼DefaultMutableTreeNode中有isRoot()函數?我問,因爲我有一個擴展DefaultMutableTreeNode的類。我希望能夠在多個不同的JTree對象中使用此類的單個實例。然而,似乎isRoot()是我應該問樹對象本身的一個問題。任何人都可以提供任何有關爲什麼此功能存在於節點級而不是樹級的見解嗎?DefaultMutableTreeNode中的isRoot()
樹對象不能是樹的根; JTree對象不是一個節點。
DefaultMutableTreeNode設計用於促進樹的遞歸遍歷。由於處理樹的遞歸方法一次只能訪問一個節點(及其後續節點),因此該方法區分樹根的唯一方法是讓節點明確地記錄它們是否存在是樹的根。
它必須存在於節點級別,因爲它明確檢查該節點是否爲根節點。而不是依靠外部方法,你必須通過一個節點作爲參數來決定是否是根。 – gtgaxiola
那麼,爲了進一步提出我的問題,當節點不是一棵樹中的根,而是另一棵樹中的根時會發生什麼? – user3058135
然後,您已經通過在兩個單獨的樹中共享節點成功地編寫了一個編程錯誤。 – Kayaman