static int binarySearch(tipo array[], tipo campo_a_buscar);
Cuando el elemento que buscar no se encuentra, el valor negativo devuelto tiene un significado especial: informa de la posición donde tendría que colocarse el elemento buscado para que la tabla continúe ordenada. El índice de inserción se calcula:
indiceInsercion = -pos – 1;siendo pos el valor negativo devuelto por binarySearch(). Veamos un ejemplo:
int a[] = {2, 4, 5, 6, 9};
int pos = Arrays.binarySearch(a, 3); //pos vale -2
int indiceInsercion = -pos – 1; //vale 1
package U6;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class A000 {
public static void main(String[] args) {
int combGan[]= {2,3,4,7,9,15};
int apuesta[]= {1,2,7,15,26,35};
int aciertos=primitiva(combGan, apuesta);
System.out.println("Los aciertos son: " + aciertos);
}
private static int primitiva(int[] combGan, int[] apuesta) {
int aciertos=0;
for (int ele:apuesta) {
if (Arrays.binarySearch(combGan, ele)>=0)
aciertos++;
}
return aciertos;
}
}