Delegate void Message
Assotsiativ massivlar (xaritalar)
Download 184.94 Kb.
|
Amaliyot ishi Dasturlash texnologiyalari
Assotsiativ massivlar (xaritalar).
Map Shuni ta'kidlash kerakki, to'plamlarni ifodalovchi boshqa interfeyslardan farqli o'laroq, Map interfeysi To'plam interfeysini kengaytirmaydi. Map interfeysining metodlari quyidagilarni o'z ichiga oladi: void clear(): to'plamni tozalaydi boolean containsKey(Object k): agar to'plamda k kalit bo'lsa, rost qiymatini qaytaradi boolean containsValue(Object v): agar to'plamda v qiymati bo'lsa, rostni qaytaradi Set boolean equals (Object obj): agar to'plam obj parametri orqali o'tgan to'plam bilan bir xil bo'lsa, true qiymatini qaytaradi boolean isEmpty: agar to'plam bo'sh bo'lsa, true qiymatini qaytaradi V get(Object k): kaliti k bo'lgan ob'ekt qiymatini qaytaradi. Agar bunday element bo'lmasa, null qaytariladi. V getOrDefault(Object k, V defaultValue): kaliti k bo'lgan ob'ekt qiymatini qaytaradi. Agar bunday element bo'lmasa, defaultVlue qaytariladi. V put(K k, V v): k kaliti va v qiymati bilan yangi ob'ektni to'plamga qo'yadi. Agar to'plamda shunga o'xshash kalitga ega ob'ekt mavjud bo'lsa, u holda uning ustiga yoziladi. Qo'shilgandan so'ng, k kalitining oldingi qiymatini qaytaradi, agar u allaqachon to'plamda bo'lsa. Agar kalit hali to'plamda bo'lmagan bo'lsa, null qaytariladi. V putIfAbsent(K k, V v): agar kollektsiyada bir xil kalitli element bo'lmasa, k kaliti va v qiymatiga ega yangi ob'ektni to'plamga qo'yadi. Set Collection void putAll(Map extends K, ? extends V> map): to'plamga xaritadagi barcha ob'ektlarni qo'shadi V remove(k ob'ekti): ob'ektni k kaliti bilan olib tashlaydi int size(): to'plamdagi elementlar sonini qaytaradi Ob'ektni to'plamga qo'yish uchun put usulidan foydalaning va kalit bilan olish uchun get usulidan foydalaning. Map interfeysini amalga oshirish sizga kalitlar va qiymatlar to'plamini ham olish imkonini beradi. EntrySet() metodi esa Map.Entry Map.Entry boolean equals(Object obj): Map.Entry interfeysini ifodalovchi ob'ekt joriy bilan bir xil bo'lsa, true qiymatini qaytaradi. K getKey(): displey obyektining kalitini qaytaradi V getValue(): displey ob'ektining qiymatini qaytaradi V setValue(V v): joriy ob'ekt qiymatini v ga o'rnatadi int hashCode(): berilgan obyektning xesh kodini qaytaradi Map ob'ektlarini takrorlashda biz ob'ektlarning kalitlari va qiymatlari bilan ishlash uchun ushbu metodlardan foydalanamiz. Barcha xaritalashlar uchun asosiy sinf AbstractMap abstrakt klassi bo'lib, u Map interfeysining ko'pgina metodlarini amalga oshiradi. Eng keng tarqalgan xaritalash sinfi HashMap bo'lib, u Map interfeysini amalga oshiradi va AbstractMap sinfidan voris bo'lib qoladi. Sinfdan foydalanishga misol: import java.util.*; public class Program{ public static void main(String[] args) { Map states.put(1, "Germany"); states.put(2, "Spain"); states.put(4, "France"); states.put(3, "Italy"); String first = states.get(2); System.out.println(first); Set Collection states.replace(1, "Poland"); states.remove(2); for(Map.Entry System.out.printf("Key: %d Value: %s \n", item.getKey(), item.getValue()); } Map people.put("1240i54", new Person("Tom")); people.put("1564i55", new Person("Bill")); people.put("4540i56", new Person("Nick")); for(Map.Entry System.out.printf("Key: %s Value: %s \n", item.getKey(), item.getValue().getName()); } } } class Person{ private String name; public Person(String value){ name=value; } String getName(){return name;} } Elementni qo'shish yoki almashtirish uchun qo'yish yoki almashtirish usuli, kalit bo'yicha qiymatini olish uchun esa get usuli qo'llaniladi. Xarita interfeysining boshqa usullari yordamida elementlarda boshqa manipulyatsiyalar ham amalga oshiriladi: iteratsiya, kalitlarni olish, qiymatlar, o'chirish. Download 184.94 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling