无论如何得到indexOf就像你会得到一个字符串。
output.add("1 2 3 4 5 6 7 8 9 10);
String bigger[] = output.get(i).split(" ");
int biggerWher = bigger.indexOf("10");
我写了这段代码,但它返回错误而没有编译!有什么建议?
答案 0 :(得分:59)
使用此...
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");
答案 1 :(得分:13)
当数组是一个对象数组时,则:
Object[] array = ..
Arrays.asList(array).indexOf(someObj);
另一个替代方案是org.apache.commons.lang.ArrayUtils.indexOf(...)
,它还具有基本类型数组的重载,以及采用起始偏移量的3参数版本。 (Apache版本应该更高效,因为它们不需要创建临时的List
实例。)
答案 2 :(得分:4)
数组没有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");
答案 3 :(得分:2)
您可以使用java.util.Arrays.binarySearch(array, item);
这会给你一个项目的索引,如果有的话......
但请注意,在搜索之前需要对数组进行排序。
此致
答案 4 :(得分:1)
Java数组中没有直接的indexOf方法。
答案 5 :(得分:0)
output.add("1 2 3 4 5 6 7 8 9 10");
你错过了10后的"
。