我真的很难理解这是什么意思。 如果选择了一行并且它小于数组中的元素数,那么执行此操作...
它没有沉入。请帮助。
答案 0 :(得分:1)
我假设给定的array
用于填充表格视图的内容,这一行出现在与选择相关的方法中。
变量indexpath
指的是表中的特定项(可能是选中的行,具体取决于此行发生的方法)。它计算了两个索引:row
和section
,第一个是给定部分中项目的从0开始的索引。
我还假设如果条件评估true
,您将使用indexpath.row
来获取array
中的元素。如果是这种情况,那么不执行该检查会使代码暴露出超出数组范围的可能性。
小于 <
,因为数组和indexpath.row
都是从0开始的索引,因此数组中的最大索引值是其计数减去 1。
答案 1 :(得分:0)
if(indexpath.row&lt; array.count)让我们将其分解
indexpath.row indexpath类具有变量名称行,它将包含一个值,该值将由行的预设值或indexpath代码中设置的值确定。
array.count .count是为我们提供的那些句柄工具之一,它只是给你数组中元素的数量
现在让我们把它全部收集起来 if(如果行位于indexpath中的值&lt;数组中元素的数量)
希望这有帮助
罗宾
答案 2 :(得分:0)
计数将总是返回对象的数量。像这样:
NSArray *bowlWithFruits = @[@"Apple 1",@"Apple 2",@"Apple 3"];
计算数组中的对象会告诉你有3个。
到目前为止计算。 Objective C是C的超集,意味着我们首先使用C语言。在C中,您指的是集合中元素的偏移量,这与我们的ObjC集合中的内容相同。要回复@“Apple 1”你会说[bowlWithFruits objectAtOndex:0]或现代语法bowlWithFruits [0]
现在该指数正在发挥作用,但我认为你可以猜出我们的指数究竟是什么。他只是一个直线偏移。
因此,当我们将示例中最后一个元素的索引路径与对象计数进行比较时,我们实际上将2与3进行比较。没有objectAtIndex:3就像没有一个rowvalue为3的索引路径一样。
这就是你比较indexpath.row&lt;的原因。 array.count。