在构建我的项目时,我收到了这样的消息:
...\listadapter\MyAdapter.java:使用未检查或不安全的操作。
有关详细信息,请使用-Xlint:unchecked重新编译。
下面这几行代码会发生这种情况:
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
beanList = (ArrayList<Bean>) results.values;
notifyDataSetChanged();
}
我不知道该怎么办。
发布于 2019-02-28 04:43:16
这是因为您正在强制转换为泛型类型,而编译器不知道这种强制转换是否合法。如果您的results.values
不是ArrayList的实例,则该行代码将失败,并显示ClastCastException。如果您100%确定它将是Bean的ArrayList,则可以取消显示此警告(通过使用@SuppressWarnings("unchecked")
注释该方法
发布于 2019-02-28 04:43:14
你可以尝试使用try catch方法来捕获Excepcion,或者你可以为这个问题创建一个新的Exception,你可以创建一个扩展Exception的类,你可以在这里了解更多:How to creat a custom Exception。
https://stackoverflow.com/questions/54914044
复制相似问题