将布尔阵列转换为Java中整数的方法的最快实现



是否有一种方法可以从速度方面改进此方法?:

static int booleanArrayToInt(boolean[] array) {
    int x = 0;
    int i = 0;
    for (boolean b : array) {
        i++;
        if (b) {
            x = 1;
            break;
        }
    }
    for (int j = i; j < array.length; j++) {
        if (array[j]) x = (x << 1) + 1;
        else x = x << 1;
    }
    return x;
}

在这里你去。

      boolean[] bools =
            { true, true, false, false, true, true, false, false, true
            };
        public static int binaryToInt(boolean[] bools) {
          int x = 0;
          for (boolean b : bools) {
             x <<= 1;
             x |= b ? 1
               : 0;
          }
          return x;
        }

最新更新