Cómo pasar función como parámetro al método computeIfAbsent?

Mayur Patil:

Soy nuevo en Java, un poco transición de C # a Java. java.util.functiontiene una interfaz definida como Functionque es introducida en computeIfAbsentel método de Map.

Quería definir y delegar esa función a computeIfAbsentmétodo.

map.computeIfAbsent(key, k => new SomeObject())

funciona, pero lo quería con devolución de llamada donde func. Pero el problema es Functionrequiere parámetro de entrada por definir. ¿Cómo puedo configurar a voido sin argumentos.

map.computeIfAbsent(key, func);
Eran :

computeIfAbsentsiempre tendrá un parámetro de entrada para el pasado Function- que sería la clave.

Por tanto, como se puede escribir:

map.computeIfAbsent(key, k -> new SomeObject());

También puede escribir (suponiendo que la clave de su MapES UN String):

Function<String,SomeObject> func = k -> new SomeObject();
map.computeIfAbsent(key, func);

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=183175&siteId=1
Recomendado
Clasificación