Maniquí Principiante:
Voy a encontrar una clase en una lista de clases ( List<Class<?>>
) con corrientes de Java:
Class cls = classList.stream().filter(clazz -> clazz.getName().startsWith("MyName")).findAny().orElse(null);
Una clase con el nombre MyNameClass
existe en la lista, pero el valor de cls
es nulo al final. ¿Hay algo malo en el filter()
?
DDovzhenko:
Debe utilizar .getSimpleName
, .getName
regresa nombre completo de la clase con el paquete en ella. Por ejemplo, String.class.getName()
devuelve "java.lang.String".