2009-05-12 16 views

Respuesta

392

Desde: http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/fn/tld-summary.html

longitud (java.lang.Object) - Devuelve el número de elementos en una colección, o el número de caracteres en una cuerda.

poner esto en la parte superior de la página para permitir que el espacio de nombres fn:

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 

y utilizar como esto en su página JSP:

<p>The length of the companies collection is : ${fn:length(companies)}</p> 

Así que para probar con longitud de una colección:

<c:if test="${fn:length(companies) gt 0}"> 
    <p>It is greater than 0</p> 
</c:if> 

Tenga en cuenta el uso de gt en lugar de > como > no está permitido dentro de las etiquetas jsp/jsf.

+45

Sólo quería señalar que si la necesidad de obtener el tamaño es determinar si la colección es no vacía, entonces el El operador "vacío" es útil ya que también busca nulo. – Joel

+18

+1. Úselo de esta manera

+0

Estoy de acuerdo con Mark aquí. ¿Por qué importar más cruft en su página por una etiqueta? Use la solución de Mark, es más limpio. – ResourceReaper

10

Usted puede usar como esto

${fn:length(numList)} 
-2

uso ${fn:length(companies) > 0} para comprobar el tamaño. Esto devuelve un valor lógico

26

Como sugiere @ Joel y @ Marcos Chorley en los comentarios anteriores:

${empty companies} 

Esto comprueba listas/colecciones/matrices nulas y vacías. No te da la longitud, pero cumple el ejemplo en el PO. Si puede salirse con la suya, esto es más limpio que importar una biblioteca de etiquetas y su sintaxis crujiente como gt.

-2

Para que su declaración jstl a trabajar, que tendría que cambiarlo a:

<c:if test="${companies.size > 0}"></c:if> 

Para ello hay que añadir un método a la clase llamada getSize empresas que devuelve el tamaño como int. y luego solo usa la misma declaración jstl que has usado antes.

Aquí es un ejemplo para el método getSize que debe agregar a su clase de empresas:

public int getSize(){ 
    return companies.size(); 
} 
Cuestiones relacionadas