gpt4 book ai didi

java - 检查 boolean 数组是否包含 true 的最快方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:29:32 27 4
gpt4 key购买 nike

我有一个 arrayboolean 条目:

boolean[] myBooleanArray = new boolean[24];

目前我检查它是否像这样包含 true:

Arrays.asList(myBooleanArray).contains(true);

这是检查 boolean 数组的最快方法吗?如果不是,执行此检查的最快方法是什么?

编辑:

我通过在 Android 4.03 Samsung S2 设备上将其作为应用程序运行来为您的答案中的方法计时,如下所示:

boolean[] myBooleanArray = new boolean[24];

long startTime = System.nanoTime();
suggestedMethod(myBooleanArray);
long endTime = System.nanoTime();

long duration = endTime - startTime;
Log.i("timetest", Long.toString(duration));

五次运行的时间排名是,最快的第一:

  1. 在 5334 和 11584 纳秒之间:

    for (boolean value : myBooleanArray) {
    if (value) {
    return true;
    }
    }
    return false;
  2. 在 160542 和 171417 纳秒之间:

    Arrays.asList(myBooleanArray).contains(true);
  3. 在 191833 和 205750 纳秒之间:

    Booleans.contains(myBooleanArray, true);

最佳答案

遍历数组

for(boolean value: myBooleanArray){
if(value){ return true;}
}
return false;

关于java - 检查 boolean 数组是否包含 true 的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13677872/

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