gpt4 book ai didi

Java三元运算符和设置循环索引值

转载 作者:搜寻专家 更新时间:2023-11-01 03:59:39 24 4
gpt4 key购买 nike

我有一个 for 循环遍历 ArrayList

如果在for循环中满足条件:

  • 我从 ArrayList 中删除当前元素
  • 减小ArrayList 局部变量的大小
  • 像这样减少 for 循环的索引,检查以确保它们永远不会低于零。

我们刚刚删除了 ArrayList 的最后一个元素的情况:

i = (i > 0) ? i-- : i;

我的问题是,当 i > 0 时,上面的代码不会将 i 减 1。我无数次使用过三元运算符,但从未见过这种行为。我已经测试过 i 确实 > 0 并且正在调用 i-- 部分。它根本不会降低 i 的值。删除 0 值检查并简单地运行 i--; 确实会按预期减少 i。

EDIT2:好吧,有人编辑了我最后一次编辑,其中我提到我在这种情况下特别不使用 ListIterator,因为循环本身对性能敏感,处于 Android 代码的关键部分。

最佳答案

i-- 递减 i,但返回原始值。

i = i-- 将递减 i,然后将其赋给原始值。

你应该使用i - 1

关于Java三元运算符和设置循环索引值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6099886/

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