Gar*_*g's 1 java arrays arraylist
我想ArrayList<String>在String Array中找到item的索引,但每次indexOf()都给-1索引.
我不明白哪里出错了?请检查我的代码并指导我.
public static void arrangeUiComponent() {
ArrayList<String> packageName = new ArrayList<String>();
packageName.add("com.example.dummy");
packageName.add("edu.app.reading");
ArrayList<Integer> index = getIndex(packageName);
}
Run Code Online (Sandbox Code Playgroud)
//搜索方法
private static ArrayList<Integer> getIndex(ArrayList<String> searchName) {
ArrayList<Integer> indexList = new ArrayList<Integer>();
String[] collectionData = new String[] { "com.example.app",
"com.example.appdemo", "com.example.dummy", "edu.app.reading",
"edu.app.knowledge" };
/*
* for iterating each and every item of list
*/
for (int i = 0; i < searchName.size(); i++) {
Log.i("MISSION", "value will be: " + searchName.get(i).toString());
/*
* for searching listItem in package name array
*/
for (int j = 0; j < collectionData.length; j++) {
indexList.add(collectionData.toString().indexOf(searchName.get(i).toString()));
break;
}
}
return indexList;
}
Run Code Online (Sandbox Code Playgroud)
更换
for (int j = 0; j < collectionData.length; j++) {
indexList.add(collectionData.toString().indexOf(searchName.get(i).toString()));
break;
}
Run Code Online (Sandbox Code Playgroud)
同
indexList.add(Arrays.asList(collectionData).indexOf(searchName.get(i)));
Run Code Online (Sandbox Code Playgroud)
这是您的代码的工作演示.Arrays.asList将你转变string array成一个list.你为什么不用一个list而不是string collectionData array?