¿Cómo verifico dos colecciones para el caso de ignorar la igualdad?

Como no hay una biblioteca nativa que proporcione esto, creo que siempre tendrá que hacer alguna solución, pero lo siguiente podría ser una solución elegante sin tener que cambiar sus colecciones existentes.

public boolean containsAllIgnoreCase(Collection<String> var1, Collection<String> var2) {
    return var1.stream()
               .map(String::toLowerCase)
               .collect(toList())
               .containsAll(var2.stream()
                                .map(String::toLowerCase)
                                .collect(toList());
}

O incluso más fácil de leer.

public List<String> toLowerCaseList(Collection<String> var) {
    return var.stream().map(String::toLowerCase).toList();
}

public boolean containsAllIgnoreCase(Collection<String> var1, Collection<String> var2) {
    return toLowerCaseList(var1).containsAll(toLowerCaseList(var2));
}
Respuesta 1

Cuando las asignaciones se realizan de derecha a izquierda, ¿por qué lo siguiente no da un error del compilador? Cadena str = str = "";

Tengo problemas para comer la impresora de etiquetas Argox, pero todavía no puedo enviarle nada. El modelo es Argox OS214 tt, ANPP y acepta PPLB. Use una clase genérica para la conexión a dispositivos seriales, solía ...

Intento transferir el archivo con Mtom y funciona bastante bien hasta que uso SoapHandler para verificar la firma del cliente. SoapHandler mantiene todos los mensajes y los cambia a codificados en base64. Entonces cuando trato de ...

Estoy usando Camel 2.17 y me gustaría producir un archivo. Si el archivo ya existe, quiero mover el archivo existente en otra carpeta y agregar una marca de tiempo al archivo movido. Aquí está el código que uso: ...