Sobes.tech
Junior — Middle

Elementlarni tartibda saqlashni qo'llab-quvvatlaydigan to'plamda elementlarni qanday saqlashni amalga oshirasiz?

sobes.tech AI

AIdan javob

iOS (Swift) da elementlarni qo‘shilish tartibini saqlab qolgan holda to‘plamda saqlash uchun, to‘plam va massiv xususiyatlarini birlashtiradigan ma’lumotlar tuzilmasidan foydalanish mumkin. Swiftning standart kutubxonasida, iOS 13 va macOS 10.15 dan boshlab mavjud bo‘lgan OrderedSet turi mavjud bo‘lib, aynan shunday qiladi — noyob elementlarni saqlaydi va ularning tartibini saqlab qoladi.

OrderedSet dan foydalanish misoli:

import Foundation

var orderedSet = OrderedSet<String>()
orderedSet.append("apple")
orderedSet.append("banana")
orderedSet.append("apple") // qo‘shilmaydi, chunki element allaqachon mavjud

print(orderedSet) // ["apple", "banana"]

Agar OrderedSet mavjud bo‘lmasa, shunga o‘xshash xatti-harakatni, tartib uchun massiv va noyoblik uchun to‘plamdan foydalanib amalga oshirish mumkin:

var array: [String] = []
var set: Set<String> = []

func addElement(_ element: String) {
    if !set.contains(element) {
        set.insert(element)
        array.append(element)
    }
}

addElement("apple")
addElement("banana")
addElement("apple")

print(array) // ["apple", "banana"]

Shu tarzda, siz qo‘shilish tartibini va elementlarning noyobligini saqlaysiz.