我有两个ArrayLists
。我需要遍历stationNames
数组并获取索引。然后返回stationIDs
数组的相同索引的值。我如何实现这一目标?请帮我。 stackoverflow上的现有解决方案对此无效。我是android开发的新手。
当我像下面的代码一样遍历数组时,会出现错误Array type expected; found: java.util.ArrayList<java.lang.String>
ArrayList<String> stationNames = new ArrayList<String>();
ArrayList<String> stationIDs = new ArrayList<String>();
stationName = "Hello"
int index = -1;
try {
for (int i = 0; i < stationNames.length; i++) {
if (stationNames[i].equals(stationName)) {
index = i;
break;
}
}
}
catch (Exception e){
Log.d("Excetion!",e.getLocalizedMessage());
}
return stationIDs[index];
答案 0 :(得分:3)
此处的stationNames不是数组,而是ArrayList
。因此,您无法使用.length
,请使用.size()
:
更简单:
return stationNames.indexOf(stationName);
如果在列表中找到它将返回其位置,否则返回-1。
答案 1 :(得分:1)
没有尝试捕捉和循环的所有阴影。我可以使用一行代码执行相同的任务,例如以下...
int output = stationIDs.get(stationNames.indexOf(stationName));
谢谢大家的帮助!
答案 2 :(得分:-1)
只需使用indexOf
对象的ArrayList
方法。
ArrayList<String> stationNames = new ArrayList<String>();
ArrayList<String> stationIDs = new ArrayList<String>();
String stationName = "Hello"
int index = stationNames. indexOf(stationName);
if(index!=-1){
String value= stationIDs[index];
}