Java Set的使用和打印内容<;设置<;T>&燃气轮机;在爪哇

Java Set的使用和打印内容<;设置<;T>&燃气轮机;在爪哇,java,set,Java,Set,我有一个带有此变量的Java文件,其中应该包含字符串内容: 私有集解释 我读到集合是某种类型数据的集合(我想应该是MyAxiom),但找不到如何访问它们,我需要标记 我试图用get-return方法检索这些解释 public Set<Set<OWLAxiom>> getExpl(int index) { return this.explanations(index); } 甚至 public void getExpl() { return this.ex

我有一个带有此变量的Java文件,其中应该包含字符串内容:

私有集解释

我读到集合是某种类型数据的集合(我想应该是
MyAxiom
),但找不到如何访问它们,我需要标记

我试图用get-return方法检索这些解释

public Set<Set<OWLAxiom>> getExpl(int index) {
    return this.explanations(index);
}
甚至

public void getExpl() {
    return this.explanations;
}

您的代码告诉您有一个索引值,并且您希望访问
集中相应的值。但实际上,您无法使用索引访问
Set
,因为
Set
s是无序的对象集合。所以这是不可能的

如果你想用这种方式访问你的元素,那么你应该考虑使用一个列表。 另见:


编辑

可以按如下方式递归打印所有元素:

public void printExpl(Set<Set<MyAxiom>> explanations) {
    for (Set <MyAxiom> exp: explanations) {
        for (MyAxiom obj: exp) {
            System.out.println(obj.toString());
        }
    }
}
public void printExpl(设置说明){
用于(设置示例:说明){
用于(MyAxiom obj:exp){
System.out.println(obj.toString());
}
}
}

您的代码告诉您有一个索引值,您希望访问
集合中相应的值。但实际上,您无法使用索引访问
Set
,因为
Set
s是无序的对象集合。所以这是不可能的

如果你想用这种方式访问你的元素,那么你应该考虑使用一个列表。 另见:


编辑

可以按如下方式递归打印所有元素:

public void printExpl(Set<Set<MyAxiom>> explanations) {
    for (Set <MyAxiom> exp: explanations) {
        for (MyAxiom obj: exp) {
            System.out.println(obj.toString());
        }
    }
}
public void printExpl(设置说明){
用于(设置示例:说明){
用于(MyAxiom obj:exp){
System.out.println(obj.toString());
}
}
}

您希望返回
集合
还是
Axiom
?据我所知,您的方法只有在
返回此项时才有效。解释你是这个意思吗?解释?我也用--public Set getExpl(){return this.explainsations;}尝试了这个方法,但出现了一个错误。这个java类是jsp页面中使用的javabean。我使用Maven进行编译,它工作得很好,但是当我尝试启动jsp页面时,我得到一个错误:“BundleQueryManagement类型中的方法getExpl()不适用于参数(int)”您希望返回
集还是
Axiom
?据我所知,您的方法仅有效,如果你
返回这个解释你是这个意思吗?解释?我也用--public Set getExpl(){return this.explainsations;}尝试了这个方法,但出现了一个错误。这个java类是jsp页面中使用的javabean。我使用Maven进行编译,它工作得很好,但是当我尝试启动jsp页面时,我得到一个错误:“BundleQueryManagement类型中的方法getExpl()不适用于参数(int)”,我想打印出整个元素组,它应该是字符串elements@GondraKkal请参阅答案的编辑部分。这将打印所有元素。请确保适当地重写
toString()
方法。请稍候,我需要返回所述元素,以便在将使用此方法的jsp文件中打印它们。它是如何变化的?还有,什么是exp和obj?我想更多地了解你做了什么here@GondraKkal
exp
obj
只是变量名。我正在打印单个元素。如果你愿意,那么你可以根据你的要求返回它们。好的,我将不得不这样修改它:public void printExpl(Set expansions){for(Set exp:expansions){for(MyAxiom obj:exp){return obj.toString();}}}}}我想打印出整个元素组,哪个应该是字符串elements@GondraKkal请参阅答案的编辑部分。这将打印所有元素。请确保适当地重写
toString()
方法。请稍候,我需要返回所述元素,以便在将使用此方法的jsp文件中打印它们。它是如何变化的?还有,什么是exp和obj?我想更多地了解你做了什么here@GondraKkal
exp
obj
只是变量名。我正在打印单个元素。如果您愿意,那么您可以根据您的需求返回它们。好的,我将不得不这样修改它:public void printExpl(Set expansions){for(Set exp:expansions){for(MyAxiom obj:exp){return obj.toString();}}}