puntobip/sources/android/support/v4/util/ContainerHelpers.java
2022-12-04 18:05:41 -03:00

67 lines
1.9 KiB
Java

package android.support.v4.util;
/* loaded from: classes.dex */
class ContainerHelpers {
static final int[] EMPTY_INTS = new int[0];
static final long[] EMPTY_LONGS = new long[0];
static final Object[] EMPTY_OBJECTS = new Object[0];
ContainerHelpers() {
}
public static int idealIntArraySize(int need) {
return idealByteArraySize(need * 4) / 4;
}
public static int idealLongArraySize(int need) {
return idealByteArraySize(need * 8) / 8;
}
public static int idealByteArraySize(int need) {
for (int i = 4; i < 32; i++) {
if (need <= (1 << i) - 12) {
return (1 << i) - 12;
}
}
return need;
}
public static boolean equal(Object a, Object b) {
return a == b || (a != null && a.equals(b));
}
/* JADX INFO: Access modifiers changed from: package-private */
public static int binarySearch(int[] array, int size, int value) {
int lo = 0;
int hi = size - 1;
while (lo <= hi) {
int mid = (lo + hi) >>> 1;
int midVal = array[mid];
if (midVal < value) {
lo = mid + 1;
} else if (midVal <= value) {
return mid;
} else {
hi = mid - 1;
}
}
return lo ^ (-1);
}
/* JADX INFO: Access modifiers changed from: package-private */
public static int binarySearch(long[] array, int size, long value) {
int lo = 0;
int hi = size - 1;
while (lo <= hi) {
int mid = (lo + hi) >>> 1;
long midVal = array[mid];
if (midVal < value) {
lo = mid + 1;
} else if (midVal <= value) {
return mid;
} else {
hi = mid - 1;
}
}
return lo ^ (-1);
}
}