SORU
3 Aralık 2013, Salı


8 Liste< Java;V> Göster<K, V>

Harita 8 Java dere ve Lambda kullanarak nesnelerin Listesini çevirmek istiyorum.

Bu Java 7'de ve aşağıda yazmak istiyorum.

private Map<String, Choice> nameMap() {
        final Map<String, Choice> hashMap = new HashMap<>();
        for (final Choice choice : choices) {
            hashMap.put(choice.getName(), choice);
        }
        return hashMap;
}

Kolayca kullanarak bu Java 8 başarmak ve ancak Guava olmadan bunu yapmak için nasıl bilmek istiyorum Guava edebilirim.

Guava:

private Map<String, Choice> nameMap() {
    return Maps.uniqueIndex(choices, new Function<Choice, String>() {

        @Override
        public String apply(final Choice input) {
            return input.getName();
        }
    });
}

Ve Java 8 Lambda ile Guava.

private Map<String, Choice> nameMap() {
    return Maps.uniqueIndex(choices, c -> c.getName());
}

CEVAP
3 Aralık 2013, Salı


Collectors documentation temel mesele çok basit:

Map<String, Choice> result =
    choices.stream().collect(Collectors.toMap(Choice::getName,
                                              Function.identity()));

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • How to Cook ?

    How to Cook

    31 Ocak 2007
  • Phymec

    Phymec

    18 Temmuz 2009
  • stokelycalm

    stokelycalm

    28 Aralık 2010