12 Haziran 2019 Çarşamba

HashMultimap Sınıfı

create metodu
HashMultimap nesnesi döner.
Örnek
HashMultimap nesnesi MultipMap arayüzünden kalıttığı için şöyle yaparız.
Multimap<String, String> m = HashMultimap.create();
Örnek
HashMultimap nesnesi SetMultipMap arayüzünden kalıttığı için şöyle yaparız..
SetMultimap<Long, SomeClass> encounters = new Hashmultimap.create();
Örnek
Eğer thread safe olsun istesek şöyle yaparız.
Multimap<String, String> m = HashMultimap.create();
Multimap<String, String> n = Multimaps.synchronizedMultimap(m);
asMap metodu
Örnek
Bir key nesnesini tamemen silmek için şöyle yaparız.
Collection<Foo> values = multimap.asMap().remove(key);
Örnek
key + value collection olarak dolaşmak için şöyle yaparız.
for (Map.Entry<String, Collection<SomeClassObject>> entry : multimap.asMap().entrySet()) {
  String key = entry.getKey();
  Set<SomeClassObject> valuesForKey = multimap.get(key);
   // do whatever
}
Örnek
Sadece value collection olarak dolaşmak için şöyle yaparız.
for (Collection collection : multimap.asMap().values()) { ... }
containsKey metodu - key
boolean döner. Şöyle yaparız.
System.out.println("contains key 1? " + lmm.containsKey(1));
entries metodu
Şöyle yaparız.
for (Map.Entry entry : multimap.entries()) { ... }
get metodu - key
Metodu imzası şöyle
@Override
public Set<V> get(@Nullable K key);
Ata metodunu çağırır. Ata metodun imzası şöyle.
Collection<V>   get(K key) 
Ata metodun içi şöyle. Eğer key yoksa bile boş bir collection döner. Bu collection Set'e cast edilir.
/**
 * {@inheritDoc}
 *
 * <p>The returned collection is not serializable.
 */
@Override
public Collection<V> get(@Nullable K key) {
  Collection<V> collection = map.get(key);
  if (collection == null) {
    collection = createCollection(key);
  }
  return wrapCollection(key, collection);
}
keys metodu
key nesnesi çoklu değer taşıyorsa birden fazla karşımıza çıkar.  Açıklaması şöyle.
all keys (a key that maps to multiple values coming up multiple times in the iteration):
Örnek
Şöyle yaparız.
for (Object key : multimap.keys()) { ... }
keySet metodu
key nesnelerini tek bir kere dolaşmak içindir.

Örnek
Şöyle yaparız.
for (Object key : multimap.keySet()) { ... }
Örnek
şöyle yaparız.
for (String key : multimap.keySet()) {
  Collection<SomeClassObject> values = multimap.get(key);
  //Do whatever with all the values for Key key...
}
Örnek
Şöyle yaparız.
Set keySet = listmultimap.keySet();
Iterator keyIterator = keySet.iterator();
while (keyIterator.hasNext() ) {
  String key = (String) keyIterator.next();
  List values = listmultimap.get( key );

}
put metodu - key + value
Şöyle yaparız.
// A set multimap.
SetMultimap<Integer, Integer> smm = HashMultimap.<Integer, Integer> create();
smm.put(1, 2);
putAll metodu
Elimizde şöyle bir kod olsun.
Map<T, K> map1 = ...;
Şöyle yaparız.
multimap.putAll(Multimaps.forMap(map1));
remove metodu - key + value
Şöyle yaparız. Key ile ilişkili value nesnesini siler. En son value da silinince key nesnesi de silinir.
// A set multimap.
SetMultimap<Integer, Integer> smm = HashMultimap.<Integer, Integer> create();
smm.put(1, 2);
smm.remove(1, 2);
// Value of key 1 in HashMultimap: []
System.out.println("Contains key 1 in HashMultimap: " + smm.containsKey(1));

Hiç yorum yok:

Yorum Gönder