Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 初始化NSMutableDictionary_Ios_Objective C_Nsmutabledictionary - Fatal编程技术网

Ios 初始化NSMutableDictionary

Ios 初始化NSMutableDictionary,ios,objective-c,nsmutabledictionary,Ios,Objective C,Nsmutabledictionary,我正在开发一个iOS应用程序,希望在其中使用NSMutableDictionary。基本上,我正在做的是将java代码转换为Objective 因此,在java中,我有如下内容: Map<String, ClassA> dict1 = new HashMap<>(); Map<Integer,Character> dict2 = new HashMap<>(); Map<Integer, Map<String,String>>

我正在开发一个iOS应用程序,希望在其中使用
NSMutableDictionary
。基本上,我正在做的是将java代码转换为Objective

因此,在java中,我有如下内容:

Map<String, ClassA> dict1 = new HashMap<>();
Map<Integer,Character> dict2 = new HashMap<>();
Map<Integer, Map<String,String>> dict3 = new HashMap<>();
Map dict1=newhashmap();
Map dict2=新的HashMap();
Map dict3=新的HashMap();

请有人使用
NSMutableDictionary
指导我上述三行的Obj-C等效代码是什么,以及如何在字典中设置和获取对。

由于Objective C没有泛型类型,所以您只需键入以下内容:

NSMutableDictionary *dict1 = [[NSMutableDictionary alloc] init];
NSMutableDictionary *dict2 = [[NSMutableDictionary alloc] init];
NSMutableDictionary *dict3 = [[NSMutableDictionary alloc] init];
有两种方法可以获取和设置值。速记形式非常类似于访问数组。 要使用速记设置值,请执行以下操作:

dict1[@"key"] = @"value";
NSString *value = dict1[@"key"];
要使用速记获取值,请执行以下操作:

dict1[@"key"] = @"value";
NSString *value = dict1[@"key"];
更详细的语法如下所示:

[dict1 setObject:@"value" forKey:@"key"];
NSString *value = [dict1 valueForKey:@"key"];

Objective-C集合类不是强类型的,因此所有三个字典都将使用以下方法创建:

NSMutableDictionary *dictX = [NSMutableDictionary new];
要填充字典,请使用:


等。

您是否查看了NS(可变)字典文档或指南及其所有示例代码?请在web上搜索“如何使用NSMutableDictionary”。如果您编写代码时遇到问题,我们很乐意提供帮助,但您似乎还没有迈出第一步。@MartinR不,我不知道!!谢谢,我现在就看。@DBD请不要误会我,我确实看了所有我能找到的东西,但在
Map
part上仍然感到困惑,这可能是因为Objective-C中不存在泛型。教程都很好,可以用,您不能只强制将特定的数据类型放入字典。我也想念Obj-C中的泛型,但也没那么糟糕。就像突击队!我将如何填充dict3?它会像
[dict3 setObject:NSMutableDictionary*abc forKey:??]
一样,因为这里的键是一个IntegerGreat!!具体到我的需要。那么dict3呢,因为它里面有一本字典???@Sibir,里面是什么类型的对象都不重要。