как сделать Collections.binarySearch на коллекции байтовых массивов? - PullRequest
0 голосов
/ 31 января 2012

Это не работает:

List<byte[]> byteArrayList = .... ;
Collections.binarySearch(byteArrayList, new ByteArrayComparator());

, поскольку байт [] не расширяет Comparable.Почему недостаточно того, что предоставляется компаратор?Есть какие-нибудь хитрости?

Упс, ошибка, я был уверен, что у меня был поисковый запрос внутри ...

1 Ответ

3 голосов
/ 31 января 2012

В настоящее время вы просматриваете список байтовых массивов для сравнения.Похоже, вы вызываете неправильный метод binarySearch, то есть это вместо это .

Попробуйте это:

List<byte[]> byteArrayList = .... ;
byte[] valueToFind = .... ;
int index = Collections.binarySearch(byteArrayList,
                                     valueToFind,
                                     new ByteArrayComparator());
...