ไม่ว่าคุณจะใช้AnyหรือAnyObjectขึ้นอยู่กับวัตถุประสงค์การใช้งานของคุณ:
ถ้าพจนานุกรมของคุณจะถูกใช้เพียงภายในรหัส Swift, แล้วคุณควรใช้Anyเพราะชนิดของคุณ ( Int, Double, Float, String, ArrayและDictionary) ไม่ได้เป็นวัตถุ
ถ้าคุณจะผ่านพจนานุกรมของคุณเพื่อการปฏิบัติ Objective-C ที่คาดหวังแล้วคุณควรใช้NSDictionaryAnyObject
เมื่อคุณimport Foundationหรือimport UIKitหรือimport Cocoaมันเป็นไปได้ที่จะประกาศอาร์เรย์ของคุณเป็น[String: AnyObject]แต่ในกรณีนี้สวิฟท์มีการรักษาของคุณInt, Double, Floatตัวอักษรเป็นNSNumberของคุณStringในฐานะNSStringของคุณArrayในฐานะNSArrayและพจนานุกรมของคุณเป็นNSDictionaryทั้งหมดที่เป็นวัตถุ พจนานุกรมที่ใช้AnyObjectเป็นประเภทค่าสามารถแปลงเป็นได้NSDictionaryแต่ใช้Anyไม่ได้
String,ArrayและDictionaryไม่ได้เรียนสำหรับการใช้งานเหล่านี้ใด ๆ