如何正确打印枚举器元素?

时间:2018-09-06 13:24:56

标签: java catalina

我试图了解别人编写的Java程序,但我不知道Java。我已经写了一个简短的方法来转储请求对象的属性。

class p(object):
    def __init__(self, name):
        self.name = name
    def __repr__(self):
        return self.name
    def __str__(self):
        return self.name
d = {p('k'): 1, p('k'): 2}

让我感到震惊的是,我意识到NetBeans变量选项卡在请求对象上显示的属性是代码输出的两倍。 该枚举似乎记录在这里: https://tomcat.apache.org/tomcat-4.1-doc/catalina/docs/api/org/apache/catalina/util/Enumerator.html

我在做什么错了?

1 个答案:

答案 0 :(得分:2)

您在此块中调用nextElement方法两次

while (rns.hasMoreElements()) {
        out.println("attribute name: " + rns.nextElement());
        attrNames[ani] = rns.nextElement().toString();
        ani = ani + 1;
    }

您应该调用一次nextElement。将其放入变量,然后使用该变量。