Évaluer si la liste est vide JSTL


121

J'ai essayé d'évaluer si cette liste de tableaux est vide ou non, mais aucun d'entre eux n'a même compilé:

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

Comment puis-je évaluer si une ArrayList est vide?

Réponses:


245

emptyest un opérateur :

L' emptyopérateur est une opération de préfixe qui peut être utilisée pour déterminer si une valeur est nulle ou vide.

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

2
Bien qu'il soit documenté que l'opérateur vide ne joue pas bien avec l'implémentation Set des collections dans JSTL avant la v2.0
casey

67

Il y a aussi les balises de fonction, un peu plus flexibles:

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

Et voici la documentation des balises.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.