Ответ 1
Используйте это...
output.add("1 2 3 4 5 6 7 8 9 10");
String bigger[] = output.get(i).split(" ");
int biggerWher = Arrays.asList(bigger).indexOf("3");
В любом случае, чтобы получить indexOf, как и в строке.
output.add("1 2 3 4 5 6 7 8 9 10);
String bigger[] = output.get(i).split(" ");
int biggerWher = bigger.indexOf("10");
Я написал этот код, но возвращаю ошибку, а не компиляцию! Любой совет?
Используйте это...
output.add("1 2 3 4 5 6 7 8 9 10");
String bigger[] = output.get(i).split(" ");
int biggerWher = Arrays.asList(bigger).indexOf("3");
Когда массив представляет собой массив объектов, тогда:
Object[] array = ..
Arrays.asList(array).indexOf(someObj);
Другой альтернативой является org.apache.commons.lang.ArrayUtils.indexOf(...)
, который также имеет перегрузки для массивов примитивных типов, а также версию с тремя аргументами, которая принимает начальное смещение, (Версия Apache должна быть более эффективной, поскольку она не влечет за собой создание временного экземпляра List
.)
Массивы не имеют метода indexOf()
; однако java.util.List
делает. Таким образом, вы можете обернуть массив в список и использовать методы List
(кроме add()
и т.п.):
output.add("1 2 3 4 5 6 7 8 9 10");
String bigger[] = output.get(i).split(" ");
int biggerWhere = Arrays.asList(bigger).indexOf("10");
Вы можете использовать java.util.Arrays.binarySearch(array, item);
Это даст вам индекс элемента, если есть...
Обратите внимание, однако, что массив нужно сортировать перед поиском.
Привет
В массивах Java нет прямого метода indexOf.
output.add("1 2 3 4 5 6 7 8 9 10");
вы пропустите "
после 10.