Sobes.tech
Junior — Middle

Lehet-e különböző adattípusokat használni egy tömbön belül?

sobes.tech MI

Válasz az MI-től

Az iOS-ben, ha a Swift nyelvről beszélünk, a tömbök (Array) típusbiztosak és ugyanazon típusú elemeket tartalmaznak. Nem lehet közvetlenül olyan tömböt létrehozni, amely különböző típusú elemeket tartalmaz, például [Int, String, Double].

Azonban, ha különböző típusokat kell tárolni egy tömbben, használhatja az Any vagy AnyObject típust:

let mixedArray: [Any] = [42, "szöveg", 3.14, igaz]

Ebben az esetben a tömb különböző típusú elemeket tartalmaz, de azokkal való munka során típuskonverziókat kell végezni, ami csökkenti a biztonságot és a kényelmet.

Az Objective-C-ben a tömbök (NSArray) különböző osztályok objektumait tartalmazhatják, mivel objektumgyűjtemények, de primitív típusokat objektumokba (NSNumber, NSString stb.) kell csomagolni.

Így, Swift-ben a tömbök szigorúan típusosak, de az Any segítségével különböző típusokat lehet tárolni, bár ezt nem javasolt szükség nélkül.