【问题标题】:How to check if array size has changed using while loop?如何使用while循环检查数组大小是否已更改?
【发布时间】:2016-10-04 23:26:03
【问题描述】:

如何检查数组大小是否增加或数组值是否已更改。

while(ARRAY.array_size_changed || ARRAY.array_altered==true) {
    System.out.println("Array size increased or decreased or values changed");
    //rest of the code is here which alter the array size
}

我使用了boolean,但它使代码永远循环。

基本上,我有一个数组,它跟踪数据库中的任何结果并将其添加到 ARRAY。根据输入到 ARRAY 中的新值,将执行下一次迭代。当没有进一步添加到 ARRAY 或更改值时,它将退出。

【问题讨论】:

  • 如果为真,则在处理案例后将两个布尔值都设置为假。
  • array_size_changedarray_altered 是如何填充的?更多上下文会很有用。
  • == true 可以省略。如果您想明确说明它(这很好),那么您应该在这两种情况下都这样做。您的代码风格不一致。
  • 我添加了一些可以提供帮助的更多细节。但是有什么方法可以检查数组的变化吗?
  • 没有这种方法。但是,如果您只需要收到有关添加或删除元素的通知,请将原始长度保存在变量中并使用int originalLength = array.length; while (originalLength == array.length) {...}。但是,要检测值更改,您需要手动跟踪更改,方法是为其创建自己的数据结构,或者在修改任何值时设置标志。

标签: java arrays loops while-loop


【解决方案1】:

我会添加一些数据抽象,并且只允许通过更改的方法或添加方法更改/添加数组中的这些值。这样当这个方法被调用时,你就知道有什么东西要被添加/改变了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 2018-09-08
    相关资源
    最近更新 更多