ios - 无法从 NSMutableArray 中正确检索对象

标签 ios objective-c xcode

我将在这个可变数组中放入各种东西,但首先我只是尝试通过放入字符串然后拉出字符串来确保它能正常工作。这是我的代码

str1=@"1";
str2=@"2";
str3=@"3";
NSMutableArray *testArray;
[testArray addObject:str1];
[testArray addObject:str2];
[testArray addObject:str3];

retrieve =[testArray objectAtIndex:1];
NSLog(@"the test number is %@",retrieve);

问题是我的 string:retrieve 在从数组接收到字符串后等于“null”。我不确定我做错了什么,我看过 Apple 的文档,但我无法理解它。我知道我一定是错误地与数组交互,但我不确定具体是如何交互的。帮助将不胜感激。 -谢谢!

最佳答案

你没有初始化你的testArray:

NSMutableArray *testArray = [NSMutableArray array];

您可以使用新语法填充数组。如果你只需要可变性来添加这三个项目,你可以使用一个非可变数组来代替,就像这样:

NSArray *testArray = @[ @"1", @"2", @"3"];

如果你确实需要可变性,调用mutableCopy:

NSMutableArray *testArray = [@[ @"1", @"2", @"3"] mutableCopy];

关于ios - 无法从 NSMutableArray 中正确检索对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27047120/

相关文章:

ios - UIScrollView contentOffset 更改时不更新

iphone - 一个 Action 或来自多个 Action 的多个方法调用

ios - SiriKit:无效的 Siri 支持 - 没有示例短语

ios - 我们可以动态创建 n no.of NSMutableArray 吗?

ios - 使用自动布局调整 super View 和所有 super View 的 sibling

ios - 我的应用占用了 iPad 存储上的虚拟空间

ios - 在 init 过程中,在处理父类(super class)的属性时,有什么方法可以避免向 self 发送消息吗?

ios - 将 ios 项目移至 cocoapods, Storyboard在 xcode 中丢失样式

iphone - uiNavigationController 推送 View Controller 时出错

ios - 当我将.repeatsForever()添加到动画时,为什么Xcode会引发错误?