Java中最接近Objective-C的NSDictionary
的实现是什么?对我来说,它看起来像HashMap<String, Object>
,但我对Objective-C很新。
由于
答案 0 :(得分:26)
NSDictionary
是一个类集群(请参阅The Cocoa Fundamentals Guide中的“类集群”部分),这意味着实际的实现对您(API用户)是隐藏的。实际上,Foundation框架将根据数据量等在运行时选择适当的实现。此外,NSDictionary
可以将任何id
作为关键,而不只是NSString
(当然,关键对象的-hash
必须是常量。)
因此,最接近的模拟可能是Map<Object,Object>
。
答案 1 :(得分:13)
实际用途:
HashMap<String, Object>
将是一种简单的非平行字典的方法。
但是,如果您需要线程安全(原子)的东西,则必须使用
HashTable<String, Object>
这是线程安全的,但是 - 特别是 - 不接受null作为有效值或密钥。
答案 2 :(得分:1)
我确实是Android新手,但对我来说ContentValues似乎是最接近NSDictionary
的人。