- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我很抱歉,好像这是一个愚蠢的问题。如果是,请发表评论,我会删除它,但下面是我的代码:
NumberedArray = [NSMutableArray arrayWithCapacity:50];
NSUInteger randomNumber = arc4random() % [NumberedArray count];
for (int i = 0; i<randomNumber; i++) {
// Run some code
}
现在我得到一个错误:Thread 1: EXC_ARITHMETIC (code=EXC_I386_DIV, subcode=0X0)
所以我最好的猜测是机器变得困惑,因为我告诉它这个数组的容量为 50,现在随机选择它的一个槽并执行一些代码,只要循环小于这个随机选择的数字.
但我真正想做的是让计算机根据随机选择的时间间隔运行代码。
这是一个游戏,在此代码中,敌人根据随机选择的时间间隔从左向右移动。这甚至是正确的方法吗?如果不是,我应该尝试什么?谢谢。
最佳答案
容量 50 并不意味着您的数组包含 50 个元素。它的计数是 0。所以你执行除以零,这就是它崩溃的原因。忘记使用 arrayWithCapacity:
或 initWithCapacity:
因为它没有任何实际帮助。
更新:
如果您需要 50 范围内的随机数,那么为什么不只使用:
NSUInteger randomNumber = arc4random() % 50;
然后像这样初始化你的数组:
numberedArray = [NSMutableArray array];
关于ios - NSMutableArray arrayWithCapacity 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22294478/
创建数组时不需要指定数组大小,对吗?那么,为什么需要 arrayWithCapacity 呢?如果我将数组的大小设置得比实际需要的小,可以吗? 最佳答案 arrayWithCapacity 是一种优化
我很抱歉,好像这是一个愚蠢的问题。如果是,请发表评论,我会删除它,但下面是我的代码: NumberedArray = [NSMutableArray arrayWithCapacity:50]; NS
arrayWithCapacity 是在 NSArray.h 中定义并在 NSArray.m 中实现的方法 当我查看 GNUStep 的代码时假设,我可以得到 arrayWithCapacity 是调
我是 Objective C 新手(具有 C++ 背景)。我想知道使用 arrayWithCapacity 在这里实际上预留了多少内存。我还没有告诉它我要在数组中放入什么类型的对象。 例如,如果我要存
我是一名 iPhone/Objective-C 新手,具有丰富的 Java 背景。 我正在学习有关 objective-c 中内存管理的更多信息,并且正在阅读 Apple 关于内存管理的文档:http
我有两个函数,应该使用哪一个?请解释区别。 答: - (NSMutableArray *)FunctionA:(int)count { NSMutableArray *a = [[NSMuta
我是一名优秀的程序员,十分优秀!