Struts2 使用Struts 2迭代器标记访问ArrayList数组
我对使用迭代器标记访问jsp中的arraylist数组有疑问 在我的动作课上,我使用了以下代码Struts2 使用Struts 2迭代器标记访问ArrayList数组,struts2,Struts2,我对使用迭代器标记访问jsp中的arraylist数组有疑问 在我的动作课上,我使用了以下代码 ArrayList[] arr= new ArrayList[10]; for(int i = 0; i < 10; i++) { arr[i] = new ArrayList<bean>(); } while (some conditions) { arr[i].add(new bean(some values)); i++; } Arra
ArrayList[] arr= new ArrayList[10];
for(int i = 0; i < 10; i++) {
arr[i] = new ArrayList<bean>();
}
while (some conditions) {
arr[i].add(new bean(some values));
i++;
}
ArrayList[]arr=新的ArrayList[10];
对于(int i=0;i<10;i++){
arr[i]=新的ArrayList();
}
而(某些条件){
arr[i].add(新bean(一些值));
i++;
}
我的问题是。。如何访问迭代器中的arr[0]、arr[1]…arr[n]ArrayList
下面的代码工作得很好,但是请改进它以获得我的结果
<s:iterator value="display.arr[0]">
...
</s:iterator>
...
谢谢你的帮助 我想知道你是否看了太多;至少有3-4种方法可以做到这一点,包括使用索引的即时列表、使用
“begin”
/“end”
属性、使用“var”
保存外部项(严格来说不是必需的,但在我看来它更容易沟通),等等
假设bean类中有一个名为“s”
的属性,我称之为SomeBean
:
${s}
使用底部的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
驱动此代码的完整操作;我每次只返回一个新列表,作为示例:
公共类NestedListsAction扩展了ActionSupport{
公共列表getDisplays(){
列表显示=新建ArrayList();
对于(int i=0;i<3;i++){
List innerList=new ArrayList();
对于(int j=0;j<3;j++){
添加(新的SomeBean(String.format(“外部:%d,内部:%d”,i,j));
}
显示.add(内部列表);
}
返回显示;
}
私有类SomeBean{
私有字符串;
公共SomeBean(字符串s){
这个.s=s;
}
公共字符串get(){
返回s;
}
}
}
请注意。通常我不会向新用户提出这个问题,但在我看来,我在回答这个问题上比你在研究这个问题上花费了更多的精力,这让我很沮丧。如何改进它?我以为你说它起作用了。你好,戴夫。。!谢谢你的回复。。!我刚刚实现了访问数组的单个索引(a[0])。。但我需要的是使用迭代器访问数组的整个索引。。!这就像是,
代码>动态索引在某种意义上,它需要为外部迭代器的每次迭代进行更改或增加!因此,迭代两个列表。您可以嵌套迭代器标记,就像在java中嵌套“for”循环一样<代码>代码>我知道这是一个愚蠢的方法。。!请张贴我的语法,以实现它通过迭代器。。!我不知道如何在嵌套迭代器中给出动态值并增加相同的。。!