Apakah Anda menggunakan Any
atau AnyObject
bergantung pada tujuan penggunaan Anda:
Jika kamus Anda hanya akan digunakan dalam kode Swift, maka Anda harus menggunakan Any
karena jenis Anda ( Int
, Double
, Float
, String
, Array
, dan Dictionary
) tidak objek.
Jika Anda akan meneruskan kamus Anda ke rutinitas Objective-C yang mengharapkan NSDictionary
, maka Anda harus menggunakan AnyObject
.
Bila Anda import Foundation
atau import UIKit
atau import Cocoa
, adalah mungkin untuk mendeklarasikan array Anda sebagai [String: AnyObject]
, namun dalam kasus ini Swift memperlakukan Anda Int
, Double
, Float
literal sebagai NSNumber
, Anda String
sebagai NSString
, Anda Array
sebagai NSArray
, dan kamus Anda sebagai NSDictionary
, yang semuanya objek. Sebuah kamus yang digunakan AnyObject
sebagai tipe nilai dapat diubah menjadi NSDictionary
, tetapi yang menggunakan Any
tidak.
String
,Array
danDictionary
bukan kelas, untuk penggunaan ini Any.