sort empty collection arrays list groovy

arrays - empty - ¿Cómo verificar si el elemento en groovy array/hash/collection/list?



groovy map list (6)

.contains () es el mejor método para las listas, pero para los mapas necesitarás usar .containsKey () o .containsValue ()

[a:1,b:2,c:3].containsValue(3) [a:1,b:2,c:3].containsKey(''a'')

¿Cómo averiguo si una matriz contiene un elemento? Pensé que podría haber algo como [1, 2, 3].includes(1) que se evaluaría como true .


IMPORTANTE Consiguió utilizar .contains () en una Colección de objetos, como Dominios. Si la declaración del dominio contiene un EqualsAndHashCode, o alguna otra implementación de igual a () para determinar si esos Ojbects son iguales, y usted lo ha configurado así ...

import groovy.transform.EqualsAndHashCode @EqualsAndHashCode(includes = "settingNameId, value")

a continuación, .contains (myObjectToCompareTo) evaluará los datos en myObjectToCompareTo con los datos para cada instancia de objeto en la colección. Por lo tanto, si su método de igualdad no está a la altura, como el mío no lo era, es posible que vea resultados inesperados.


Para las listas, el uso contains :

[1,2,3].contains(1) == true


Si realmente quieres incluir tu método en una ArrayList, simplemente agrégala:

ArrayList.metaClass.includes = { i -> i in delegate }


Un poco de azúcar sintáctica

1 in [1,2,3]


def fruitBag = ["orange","banana","coconut"] def fruit = fruitBag.collect{item -> item.contains(''n'')}

Lo hice así, así que funciona si alguien lo está buscando.