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();
}
}
我想做相同的EL表达式在JSF页面如何做,任何人帮助我?
我有这个A,B,C,D,E,F,G,H,I,J
,在我的Jsp/JSF页面我必须显示它们
A B C D
E F G H
I J
正如@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();
}
}