public int indexOf(int[] array, int data) {
if (array == null || array.length == 0) {
return -1;
}
int begin = 0;
int end = array.length;
while (begin < end) {
int mid = (begin + end) >> 1;
if (data < array[mid]) {
end = mid;
} else if (data > array[mid]) {
begin = mid + 1;
} else {
return mid;
}
}
return -1;
}