Nasıl mı?
ArrayList'inizi HashSet'e çevirebilirsiniz.
Sıralı & çift kayıt içeren listemiz:
List<String> siraliArrayList= (List<String>) Arrays.asList("Android" , "Android", "iOS", "Windows mobile");
HashSet aşağıdaki çevirme (convert) işlemi ile çift kayıtları silerek yeni bir liste oluşturmuş oluyoruz.
HashSet<String> listToSet = new HashSet<String>(siraliArrayList);
sıraliArrayList isimli listemizin boyutu(size) 4 iken convert ettiğimiz "listToSet" listemizin boyutu 3 olacaktır. Bunun nedeni ise "Android" çift kayıtlardan bir diğerinin silinmesidir.
İkisinin arasındaki fark, Hashset sıralı listedeki sırayı dikkate almayacaktır.
Yani iki listenin de çıktısını almak istediğimiz de:
siraliArrayList için : [Android, Android, iOS, Windows mobile], size : 4
listToSet için : [iOS, Android, Windows mobile], size : 3, Bambaşka bir düzende getirebilir.
Eğer sıralamanın korunmasını ve çift kaydın silinmesini istiyorsanız HashSet yerine LinkedHashSet kullanmalısınız.
sıraliArrayList isimli listemizin boyutu(size) 4 iken convert ettiğimiz "listToSet" listemizin boyutu 3 olacaktır. Bunun nedeni ise "Android" çift kayıtlardan bir diğerinin silinmesidir.
İkisinin arasındaki fark, Hashset sıralı listedeki sırayı dikkate almayacaktır.
Yani iki listenin de çıktısını almak istediğimiz de:
siraliArrayList için : [Android, Android, iOS, Windows mobile], size : 4
listToSet için : [iOS, Android, Windows mobile], size : 3, Bambaşka bir düzende getirebilir.
Eğer sıralamanın korunmasını ve çift kaydın silinmesini istiyorsanız HashSet yerine LinkedHashSet kullanmalısınız.
____
Hiç yorum yok:
Yorum Gönder