2

我需要将整数值映射到某种可变数组中的对象。解决此问题的最佳方法是什么。我看到的唯一选择是使用objectiveC++ ...

std::map<int, id> theMap;  // if i can use id?

或将整数放入NSStringNSNumber用作NSMutableDictionary.

我将它用于我的网络类,客户端将在其中发送一些数据(密钥将在有效负载中)。然后在读取时,将从数据包中提取密钥,然后提取映射中的对象以根据接收到的内容继续程序。(我担心客户端接收到的有效负载乱序或丢失有效负载。)

哪个是最好/最快的方法?

4

1 回答 1

5

最好的选择(如果你不想弄乱 C++)是使用 a NSMutableDictionarywith NSNumbers 作为键。使用新的文字语法更容易:

NSMutableDictionary *map = [NSMutableDictionary dictionary];
map[@1] = @"A value";
map[@578] = @"Another string";
int key = 310; // doesn't matter where this comes from
map[@(key)] = @"From a variable!";
于 2013-04-14T03:12:49.877 回答