Evaluar si la lista está vacía JSTL


121

He estado tratando de evaluar si esta lista de matriz está vacía o no, pero ninguno de estos se ha compilado:

<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}">  

¿Cómo puedo evaluar si una ArrayList está vacía?

Respuestas:


245

emptyes un operador :

El emptyoperador es una operación de prefijo que se puede usar para determinar si un valor es nulo o está vacío.

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

2
Aunque está documentado que el operador vacío no funciona bien con la implementación de conjuntos de colecciones en JSTL antes de v2.0
— casey

67

También están las etiquetas de función, un poco más flexibles:

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

Y aquí está la documentación de la etiqueta.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.