NSDictionary是不可变的那像这样 每次都为dict 附了新值- NSDictionary *dict = [NSDictionary dictionaryWithObject:@"v" forKey:@"k"];
- dict = [NSDictionary dictionaryWithObjectsAndKeys:
-
- @"v1",@"k1",
- @"v2",@"k2",
- @"v3",@"k3",nil];
- // NSLog(@"%@",dict);
- //打印结果k1 = v1;
- //k2 = v2;
- //k3 = v3; 上一句初始化的 v与k 却没了,如果没 第二句之后的 打印结果就是 k=v,想问下dict后面的赋值是不是就相当于前面初始化的v与k消失在了内存里,将指针指向了新的位置,同理 后面dict还可以继续赋值
- NSArray *objects = [NSArray arrayWithObjects:@"v1",@"v2",@"v3",@"v4", nil];
- NSArray *keys = [NSArray arrayWithObjects:@"k1",@"k2",@"k3",@"k4", nil];
- dict = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
-
- NSLog(@"%@",dict);// 打印结果 k1 = v1;
- k2 = v2;
- k3 = v3;
- k4 = v4;
复制代码 这样dict的内容有了三次变化,前两次的值是不是就废了 |