Binarysearch tridimensional

Espero que alguém saiba a resposta para esta questão de certificação Java:

public static void main(String[] args) {
 String[] sa = {"d", "c", "a", "b" };
 int x = Arrays.binarySearch(sa, "b");
 Arrays.sort(sa);
 int y = Arrays.binarySearch(sa, "b");
 System.out.println(x + " " + y);
}

Quais dois resultados são possíveis? (Escolha dois.)
A) 7 0
B) 7 1
C) 7 3
D) -1 0
E) -1 1
F) -1 3

A única resposta verdadeira é E) -1 1, porque se você jogar através do algoritmo de busca binária, esta é a única saída possível. Mas eles querem que eu escolha dois ... Então o segundo tem que ser B) 7 1 então, porque o segundo binarySearch no array ordenado sempre retornará1.

Então, minha pergunta é: por que B) 7 1 é um resultado possível? Mais específico: como é possível que o primeiro binarySearch na matriz não classificada retorne 7?

desde já, obrigado

questionAnswers(2)

yourAnswerToTheQuestion