Busca em Arrays Utilizando java.util.Arrays.binarySearch

public static void main(String[] args) { int x[] = { 8, 3, 4, 1, 5, 9, 6, 7, 2 }; //Não posso ordenar, este valor tenho de manter da ordem que está! System.out.println("PNA " + java.util.Arrays.binarySearch(x, 2)); //Por quê? Quando executo está busca apresenta -1 ? Quando deveria retornar a posição 8? } }

Agradeço a todos pela ajuda.

Porque binarysearch espera por um array ordenado e vc ta passando um array nao ordenado, ai da merda

Obrigado Mauricio, você teria alguma outra sugestão de como posso consultar o índice deste vetor da maneira que está?
Agradeço.

Trajano

Você pode procurar manualmente com um “for”. É um bocadinho chato, mas você deve saber melhor que eu como se busca algo com um laço “for”.

for( int i = 0; i<x.lenth; i++) {
    if(x[i]==2) {
        System.out.println("PNA " + i);
        break;
    }
}