Sprawdź, czy lista jest pusta JSTL


121

Próbowałem ocenić, czy ta lista tablic jest pusta, czy nie, ale żadna z nich nawet się nie skompilowała:

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

Jak mogę ocenić, czy ArrayList jest pusta?

Odpowiedzi:


245

emptyjest operatorem :

emptyOperatora jest prefiks operacji, które mogą być wykorzystane do określenia, czy wartość ta jest zerowa lub pusty.

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

2
Chociaż zostało udokumentowane, że pusty operator nie działa dobrze z implementacją zbioru kolekcji w JSTL przed wersją 2.0
casey

67

Są też tagi funkcyjne, nieco bardziej elastyczne:

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

A oto dokumentacja tagów.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.