Prüfen Sie, ob die Liste leer ist. JSTL


121

Ich habe versucht zu bewerten, ob diese Array-Liste leer ist oder nicht, aber keine davon hat sie überhaupt kompiliert:

<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 bewerten, ob eine ArrayList leer ist?

Antworten:


245

emptyist ein Operator :

Der emptyOperator ist eine Präfixoperation , mit der bestimmt werden kann, ob ein Wert null oder leer ist.

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

2
Obwohl dokumentiert ist, dass der leere Operator nicht gut mit der Set-Implementierung von Sammlungen in JSTL vor v2.0 spielt
casey

67

Es gibt auch die Funktions-Tags, die etwas flexibler sind:

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

Und hier ist die Tag-Dokumentation.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.