iterator tag documentionをよく見ると思います。インデックスを直接使用する、"begin"
/"end"
アトリビュートを使用する、"var"
を使用して外側のアイテムを保持する(厳密には必要ではないが、よりコミュニケートしやすい)など、少なくとも3-4の方法があります。
私はSomeBean
を呼んで、Beanクラスに"s"
という名前のプロパティを想定します。
Outer: 0, Inner: 0
Outer: 0, Inner: 1
Outer: 0, Inner: 2
Outer: 1, Inner: 0
Outer: 1, Inner: 1
Outer: 1, Inner: 2
Outer: 2, Inner: 0
Outer: 2, Inner: 1
Outer: 2, Inner: 2
:
<s:iterator value="displays" var="display">
<s:iterator value="#display">
${s}<br/>
</s:iterator>
</s:iterator>
下部にJavaコードを使用して、これは次の出力を生成
このコードを実行する完全なアクション。私は例として毎回新しいリストを返すだけです:
public class NestedListsAction extends ActionSupport {
public List<List<SomeBean>> getDisplays() {
List<List<SomeBean>> displays = new ArrayList<List<SomeBean>>();
for (int i = 0; i < 3; i++) {
List<SomeBean> innerList = new ArrayList<SomeBean>();
for (int j = 0; j < 3; j++) {
innerList.add(new SomeBean(String.format("Outer: %d, Inner: %d", i, j)));
}
displays.add(innerList);
}
return displays;
}
private class SomeBean {
private String s;
public SomeBean(String s) {
this.s = s;
}
public String getS() {
return s;
}
}
}
SO policy on accepting answersに注意してください。通常、私は新しいユーザーにそれを持ってこないだろうが、IMOはあなたが調査したよりもこの質問に答える努力を費やしたので、落ち込んでしまった。
どのように改善しましたか?私はそれが働いていたとあなたが思った。 –
こんにちは!お返事をありがとうございます..!私はちょうど配列(a [0])の単一のインデックスにアクセスすることを達成しました..しかし、私は必要なのは、イテレータを使用して配列の全体のインデックスにアクセスすることです..! iterator value = "display.arr [dynamic index]"> ... 「 –
」という意味での動的インデックスは、「
のようなものです。外部イテレータの反復ごとに変更または増分する必要があります。 –