Sobes.tech
Junior — Middle

Je možné použiť rôzne dátové typy v jednom poli?

sobes.tech AI

Odpoveď od AI

V iOS, ak hovoríme o jazyku Swift, polia (Array) sú typovo bezpečné a obsahujú prvky rovnakého typu. Priamo nie je možné vytvoriť pole s prvkami rôznych typov, napríklad [Int, String, Double].

Ak však potrebujete ukladať rôzne typy do jedného poľa, môžete použiť typ Any alebo AnyObject:

let mixedArray: [Any] = [42, "text", 3.14, true]

V tomto prípade pole obsahuje prvky rôznych typov, ale pri práci s nimi je potrebné vykonať konverzie typov, čo znižuje bezpečnosť a pohodlie.

V Objective-C môžu polia (NSArray) obsahovať objekty rôznych tried, pretože sú to kolekcie objektov, ale primitívne typy musia byť zabalené do objektov (NSNumber, NSString atď.).

Preto sú v Swift-e polia prísne typované, ale pomocou Any je možné ukladať rôzne typy, hoci to nie je odporúčané bez potreby.