Ponowne odwiedziny zbiorów tylko teraz zaprezentuję zbiór modyfikowalny, czyli co piszczy w "mutableSetOf" w języku Kotlin. Łatwo zauważyć, że nazwy są do siebie bardzo podobne! Nie dziwcie się, jeśli w tym artykule dopatrzycie się WIELU oczywistych oczywistości.
Tweet |
"MUTABLESETOF" W JĘZYKU KOTLIN DROGĄ DO ZBIORU MODYFIKOWALNEGO!
Do "setOf" dodajemy przedrostek "mutable" i mamy "mutableSetOf". Metoda, która utworzy dla nas obiekt zbioru modyfikowalnego. Jakie to daje korzyści? Poza wszystkimi cechami podanymi w zeszłym artykule, jest możliwość manipulacji argumentami w środku zbioru. Dodawanie i usuwanie, to mam głównie na myśli. Odpowiednik kolekcji między innymi "HashSet" w języku Java.
TWORZENIE INSTANCJI ZBIORU MODYFIKOWALNEGO
Jeśli uważnie przeczytaliście poprzednie artykuły, to już wiecie jakiej składni możecie się spodziewać. Nic nowego:
val names = mutableSetOf("Jacek", "Maciek", "Tomasz")
"mutableSetOf" w języku Kotlin nie odstaje niczym od funkcji tworzących listę. W środku nawiasów podajemy argumenty jakie znajdą się w zbiorze podczas inicjalizacji, a samą referencję przypisujemy do zmiennej. To jest dokładnie to samo! A typ? Jasne, że "MutableSet<String>":
val names: MutableList<String> = mutableSetOf("Jacek", "Maciek", "Tomasz")
ZESTAW PRZYKŁADOWYCH METOD ZBIORU MODYFIKOWALNEGO
Jak było przy listach, tutaj również zbiór modyfikowalny ("mutableSetOf" w języku Kotlin) to kombinacja metod "setOf" oraz własnych wymagających "pozwolenia" na modyfikację. Oto garstka przykładów.
ADD
Ta sama nazwa i to samo zastosowanie. Dodawanie nowego argumentu. Nowy element "poleci" na koniec zbioru. Miejcie na uwadze, że zbiór najpierw go "prześwietli" zanim dopuści go do siebie w ramach wyszukiwania duplikacji.
names.add("Piotr")
REMOVE
"remove", czyli usuwanie elementu ze zbioru. "mutableListOf" w języku Kotlin także nie będzie robił żadnego "dymu" w przypadku nieznalezienia argumentu podanego w parametrze.
names.remove("Maciek")
CLEAR
Zbiór "mutableSetOf" w języku Kotlin można także pozbawić wszystkich argumentów przy pomocy jednego polecenia. Wystarczy wywołać "clear" z poziomu obiektu zbioru modyfikowalnego, aby w jego wnętrzu nastała nicość!
names.clear()
Lista modyfikowalna również posiada tę metodę.
Kiedy potrzebny jest zbiór modyfikowalny, wystarczy wywołać funkcję "mutableSetOf" i przypisać wynik do zmiennej!
Dużo powtórzeń w porównaniu do listy, nie? Człowiek jest w stanie się zorientować, że Kotlin stosuje "poszufladkowane" nazwy funkcji, aby nie odbiegały one od siebie. "mutableListOf" do listy modyfikowalnej, "mutableSetOf" do zbioru modyfikowalnego i wszystko jasne! Następny przystanek, mapa!