gpt4 book ai didi

ios - While 循环在 Swift 中无法正确检查

转载 作者:行者123 更新时间:2023-11-28 12:57:47 25 4
gpt4 key购买 nike

目前,我有一个 while 语句循环遍历低于填充级别的所有单元格,并且应该删除所述单元格。目前,下面的语句经过了大约 3 个然后停止,即使更多的单元格满足条件。

if isExpanded[indexPath.item] //if already expanded remove
{
var t = 1

while (comment.paddingLevel != commentsData[indexPath.row + t].paddingLevel)
{
isExpanded.removeAtIndex(indexPath.row + t)

preRenderedText.removeAtIndex(indexPath.row + t)
commentsData.removeAtIndex(indexPath.row + t)

var path = NSIndexPath(forItem: indexPath.row + t, inSection: 0)
t++
delpaths.append(path)
}
}

最佳答案

您正在通过从中删除项目来改变 isExpanded 数组 - 这意味着下一项的索引将减少一个,但您无论如何都会增加 t。 NSMutableIndexSet 可能是用于 isExpanded 而不是数组的更好的数据结构。

NSMutableIndexSet 存储一组整数索引 - 在这种情况下,它将是您的 item 值。然后,您可以使用集合的 contains(item) 方法快速获得关于特定索引是否在集合中的答案。

关于ios - While 循环在 Swift 中无法正确检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34582329/

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