使用isLeaf()方法时编译错误

时间:2017-12-08 04:50:17

标签: java swing nodes jtree huffman-code

我正在尝试移动节点并根据它们的位置将它们添加为0或1,因为我正在进行霍夫曼压缩测试。

但是,尝试使用来自isLeaf()

的方法javax.swing.tree

以下是给我提出问题的代码段。

private static void createTestMap(
final Node node,
final String string,
final Map<Character, String> map)
{
    if(!node.isLeaf())
    {
       createTestMap(nodo.leftChild, string + "0", map);
       createTestMap(nodo.rightChild, string + '1', map);
    }
    else
    {
        map.put(node.test, string);
    }
}

将节点代码放在不同的类上。 在这一个上它给了我一个错误:

cannot find symbol - method isLeaf() 

我对Java和编码非常陌生,因此我不太确定缺少什么,因为我已经看到这种方法被用于与通过节点进行霍夫曼压缩相关的几个程序中。

2 个答案:

答案 0 :(得分:1)

为{strong> @ManagedBean(name = "customerSegmentInfo") @SessionScoped public class CustomerSegmentInfo extends BasePage implements Serializable { private boolean isNBACalled = false; private List<NextBestActionDTO> nextBestActionList = null; public List<NextBestActionDTO> getNextBestActionList() { log.debug("----- nbaCalled: " + isNBACalled); if(nextBestActionList == null && !isNBACalled){ log.debug("-------- getNextBestAction"); try { nextBestActionList = this.getNbaService().getNextBestAction(this.getCustomerInfo().getCountryCode(), this.getCustomerInfo().getCustomerNo()); log.debug("---- " + nextBestActionList.toString()); } catch (Exception e) { // TODO Auto-generated catch block log.debug("------ error calling nba service bean " + e); } isNBACalled = true; log.debug("----- nbaCalled: " + isNBACalled); } return nextBestActionList; } public void setNextBestActionList(List<NextBestActionDTO> nextBestActionList) { this.nextBestActionList = nextBestActionList; } } 子类定义isLeaf()方法,具体为TreeNode

  

我已经看到这种方法被用于多个程序

始终参考Java文档,以了解来自互联网的随机代码片段。

答案 1 :(得分:1)

JDK中只有两个Node类是javax.xml.soap.Nodeorg.w3c.dom.Node

您应该使用javax.swing.tree.TreeNodejavax.swing.tree.DefaultMutableTreeNode