gpt4 book ai didi

Objective-C 无法将 NSNumber 转换为 int

转载 作者:行者123 更新时间:2023-12-03 07:44:43 27 4
gpt4 key购买 nike

我有一个简单的代码,它将迭代一个整数数组,但是当我尝试使用“for in”循环时,它说我需要一个对象,所以我使用了 NSNumber 但为了让我的代码正常工作,它必须是一个 int,所以在循环之后,我让它将 NSNumber 转换为一个 int。它给了我另一个错误,说我需要声明变量 _strong 才能工作,所以我这样做了,但现在它给了我这些错误:“指向整数转换的不兼容指针将 'NSNumber *_strong' 发送到'int' 类型的参数”和“ARC 不允许将 'int' 隐式转换为 'NSNumber *'” 以下是给出错误的代码:

for(__strong NSNumber *i in factors) {

i = [i intValue];

最佳答案

您已经将“i”声明为 Objective C 对象(特别是 NSNumber 对象)。

如果您想进行转换,请声明一个单独的不同的变量,例如

int j;

并将整数设置为该值,例如:

j = [i intValue];

关于Objective-C 无法将 NSNumber 转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22826563/

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