package test;
import java.util.ArrayList;
import java.util.List;
public class MyTest {
List a = new ArrayList();
public void testMe(){
a.add("A");
a.add("b");
a.add("c");
a.add("d");
a.add("e");
a.add("f");
a.add("g");
a.add("h");
a.add("i");
for(int i=0;i<a.size(); ){
for (int j=i; j<i+3; j++)
{
System.out.print( a.get(j));
}
System.out.print("\n");
i = i+3;
if(i> a.size())
break;
}
}
public static void main(String arg[]){
MyTest test = new MyTest();
test.testMe();
}
}
我想在JSF页面中对EL Expression执行相同的操作如何帮助我?
我有这个A,B,C,D,E,F,G,H,I,J
,在我的Jsp / JSF页面中我必须展示它们
A B C D
E F G H
I J
答案 0 :(得分:0)
正如@Adrian所说,使用EL表达式编写尽可能少的逻辑会更好。假设您使用的是JSF 2.x,只需检索枚举值并使用h:panelGrid
对其进行格式化:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head />
<h:body>
<h:panelGrid columns="4">
<c:forEach var="letter" items="#{bean.letters}">
<span>#{letter}</span>
</c:forEach>
</h:panelGrid>
</h:body>
</html>
@ManagedBean
@RequestScoped
public class Bean {
public enum LETTER {
A, B, C, D, E, F, G, H, I, J
}
public LETTER[] getLetters() {
return LETTER.values();
}
}