我有一个字符串的arraylist的arraylist,如下所示:
[
[37, 0, nirmal, kumar, SCC , nikk3008@outlook.com, 12],
[38, 0, nirmal, kumar, MyChurchMateApp, nikk3008@outlook.com, 12]
]
clientChurchList
是string
的arraylist的arraylist。
我使用以下代码搜索此列表中的特定值:
private boolean checkForClientID() {
if (clientChurchList.contains(Integer.parseInt(clientid)))
{
Log.e("ClientId is Found", clientid);
return true;
}
else{
Log.e("ClientId is Not Found", clientid);
}
return false;
}
其中clientId
是列表中的第一个索引值,但始终在日志中打印
ClientId is Not Found(25936): 37
但你可以看到它包含值37,我可能做错了吗?
答案 0 :(得分:0)
clientChurchList.contains(Integer.parseInt(clientid))
表示您正在尝试在Integer
内找到类型为clientChurchList
的对象,其中包含其他类型的对象。但是你的黄金是在String
内的ArrayList
内找到ArrayList
。您可以使用通用版本的ArrayList
答案 1 :(得分:0)
您需要循环第一个ArrayList
,因为直接在父contains
上询问ArrayList
,将循环其包含的实际属于{{1}类型的对象1}}而不是ArrayList
String