Java 因为自行车不行

Java 因为自行车不行,java,for-loop,Java,For Loop,我在这里发布的类中调用addNotify()方法。问题是,当我调用代码中的addNotify()时,setKeys(objs)什么都不做。运行应用程序的“我的资源管理器”中未显示任何内容 但是,当我在没有循环的情况下调用addNotify()时(对于int…),并且只将一项添加到ArrayList中,它会正确地显示一项 有人知道哪里会出问题吗?看到割让了吗 class ProjectsNode extends Children.Keys{ private ArrayList objs = new

我在这里发布的类中调用addNotify()方法。问题是,当我调用代码中的addNotify()时,setKeys(objs)什么都不做。运行应用程序的“我的资源管理器”中未显示任何内容

但是,当我在没有循环的情况下调用addNotify()时(对于int…),并且只将一项添加到ArrayList中,它会正确地显示一项

有人知道哪里会出问题吗?看到割让了吗

class ProjectsNode extends Children.Keys{
private ArrayList objs = new ArrayList();

public ProjectsNode() {


}

    @Override
protected Node[] createNodes(Object o) {
    MainProject obj = (MainProject) o;
    AbstractNode result = new AbstractNode (new DiagramsNode(), Lookups.singleton(obj));
    result.setDisplayName (obj.getName());
    return new Node[] { result };
}

@Override
protected void addNotify() {
    //this loop causes nothing appears in my explorer.
    //but when I replace this loop by single line "objs.add(new MainProject("project1000"));", it shows that one item in explorer
    for (int i=0;i==10;i++){
        objs.add(new MainProject("project1000"));
    }
    setKeys (objs);
}
}看看这个循环:

for (int i=0;i==10;i++)
这将从i=0开始,在i=10时继续。我想你的意思是:

for (int i = 0; i < 10; i++)
for(int i=0;i<10;i++)

(为了清晰起见添加了额外的空格。)

乔恩是对的。。。您的循环很可能不正确

这里是你的for循环到while循环的翻译,只是为了进一步澄清他的观察

你的循环目前意味着。。。(在while循环中)


从未调用addNotify,因为从未调用addNotify…

retag:这个q实际上没有任何“netbeans特性”。最初的问题是addNotify为什么不工作。在揭示了问题的本质之后,我编辑了这个标题。这对我来说是个惊喜。虽然我在编程方面没有太多经验,但我经常使用循环。到目前为止,我从来没有遇到过这种情况。不,你没有像这样对循环使用过
,并且因为它不工作而使它工作。@Bombe-我不写“像这样”。所以,是的,我使用for cycle有几年了,我从来没有遇到过这个问题。当然,当正确地使用
for
循环时,它确实有效。不幸的是,“正确地使用
for
循环”与您所做的没有任何关系
int i = 0;

while (i==10) {
    objs.add(new MainProject("project1000"));
    i++;
}
setKeys (objs);