gpt4 book ai didi

python - 在 Objective-C NSMutableArray 中等效于 Python 的 `dict.get(' key', None)`?

转载 作者:行者123 更新时间:2023-11-28 21:59:19 25 4
gpt4 key购买 nike

在 objective-c 中有没有一种方法可以查询对象的 NSMutableArray,如果我查询的索引超出范围,它不会崩溃,但会返回一些预定义的值?

类似于 Python 的 dict 类型对象,您可以在其中执行 dictionary.get('key', None) 并且如果键不在字典中则返回

我的用例是这样的(不是实际代码):

@property (nonatomic, strong) NSMutableArray *array;
@property (nonatomic) int capacity;

- (void)viewDidLoad
{
self.array = [NSMutableArray array];
}

- (void)adder:(NSNumber)number
{
[self.array addObject:number];
}

- (void)checker
{
for (int i = 0; i < self.capacity; i++) {
if ([self.array someMethodToTellIfThereIsAValueAtIndex:i]) {
NSLog(@"We have a value");
}
}
}

最佳答案

您可以使用 indexOfObject 检查对象的索引,如果未找到该对象,它将返回 NSNotFound。所以:

index = [self.array indexOfObject:someObject];
if(index != NSNotFound)
NSLog(@"We have a value at index %lu", index);

编辑:根据评论中的对话,您似乎想要检查索引中是否存在任何对象,而不是获取特定对象的索引。

为此,您需要做的就是确保您正在检查的索引小于您正在查询的数组的 count,并且是一个非负整数。

if(i < self.array.count)

关于python - 在 Objective-C NSMutableArray 中等效于 Python 的 `dict.get(' key', None)`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25490459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com