3 回答
TA贡献1828条经验 获得超4个赞
由于您的 arraylist 是 categoryoptions_class 类型,但您想要通过 index of 获取的是一个字符串,因此它显然会返回 -1(未找到)。这是您可以尝试的东西:
如果您的 categoryoptions_class 包含字符串类型的数据成员,并且您想要比较与该数据成员匹配的对象,则遍历 arraylist 并访问每个对象的该数据成员,然后在匹配时 breakout else 打印 -1。
否则,如果您的 categoryoptions_class 没有将任何数据成员作为字符串进行比较,那么您将需要构造一个 categoryoptions_class 的对象,然后您可以使用 indexOf 选项。
TA贡献1797条经验 获得超6个赞
这里:
int sa = Arrays.asList(arrayList).indexOf(a);
那根本没有意义。即arrayList
声明为:
ArrayList<categoryoptions_class> arrayList;
所以,您正在做的是:将 aArrayList<categoryoptions_class>
变成 a List<ArrayList<categoryoptions_class>>
。然后您询问该列表是否包含字符串。
某物列表的列表肯定不会包含String 对象。
不幸的是,您的其余代码非常混乱,以至于我无法告诉您必须如何准确地“搜索”您的arrayList
对象。
TA贡献2039条经验 获得超7个赞
int index= 0;
for (categoryoptions_class categoryoptions_class : arrayList) {
if (categoryoptions_class.getCategory_opt_name().equals(a)) {
index= arrayList.indexOf(categoryoptions_class);
Log.d("Position", mArrayList.indexOf(products) + "");
}
}
添加回答
举报