我正在尝试移动节点并根据它们的位置将它们添加为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和编码非常陌生,因此我不太确定缺少什么,因为我已经看到这种方法被用于与通过节点进行霍夫曼压缩相关的几个程序中。
答案 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.Node
和org.w3c.dom.Node
。
您应该使用javax.swing.tree.TreeNode
或javax.swing.tree.DefaultMutableTreeNode
。