我想知道你是否看過iterator tag documention很多;至少有3-4種方式可以做到這一點,包括使用即時索引列表,使用"begin"
/"end"
屬性,使用"var"
來保存外部項目(不是絕對必要的,但IMO更具有溝通性)等等。
假設一個Bean類名爲"s"
財產,我稱之爲SomeBean
:
<s:iterator value="displays" var="display">
<s:iterator value="#display">
${s}<br/>
</s:iterator>
</s:iterator>
使用底部的Java代碼,這將產生以下輸出:
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
駕駛此代碼的完整操作;我只是每次都返回一個新的列表爲例:
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。通常我不會把它提交給一個新用戶,但是海事組織我花費更多的精力來回答這個問題,而不是研究它,這讓我感到沮喪。
改進方法?我以爲你說它正在工作。 – 2012-02-14 12:45:27
你好戴夫..!感謝您的回覆..!我只是實現了訪問數組的單個索引(a [0])。但我需要的是使用迭代器訪問數組的整個索引。這是一些像''s:iterator value =「display.arr」>
... ' – 2012-02-15 04:02:50'動態索引在某種意義上,它需要爲外部迭代器的每次迭代更改或增加! – 2012-02-15 04:12:51