2009-09-23 3 views
111

Ich habe zu bewerten versucht, wenn diese Array-Liste leer ist oder nicht, aber keiner von ihnen selbst zusammengestellt haben:auswerten, wenn die Liste leer ist JSTL

<c:if test="${myObject.featuresList.size == 0 }">     
<c:if test="${myObject.featuresList.length == 0 }">     
<c:if test="${myObject.featuresList.size() == 0 }">     
<c:if test="${myObject.featuresList.length() == 0 }">     
<c:if test="${myObject.featuresList.empty}">      
<c:if test="${myObject.featuresList.empty()}">     
<c:if test="${myObject.featuresList.isEmpty}"> 

Wie kann ich beurteilen, ob eine Arraylist leer ist?

Antwort

221

empty ist ein Operator.

<c:if test="${empty myObject.featuresList}"> 
+10

Ich weiß nicht‘, was ich mehr hasse, die jstl, mein Mangel an Wissen darüber, oder mein verdammter App-Server, die Jahre den meist einfachen jsp Wechsel neu zu laden dauert. Danke Bobince. Ich hätte das vorher hier fragen sollen. Hast du zufällig eine JSL-Referenz für mich? – OscarRyz

+15

Siehe: http://ndpsoftware.com/JSPXMLCheatSheet.html – RHSeeger

+2

Obwohl es dokumentiert ist, dass der leere Operator nicht gut mit Satz Implementierung von Sammlungen in JSTL vor v2.0 spielen – casey

62

Es gibt auch die Funktion Tags, etwas flexibler:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> 
<c:if test="${fn:length(list) > 0}"> 

Und here's die Tag-Dokumentation.