项目中将SparseArray和HashSet配合起来用,SparseArray是替代HashMap,HashSet是把SparseArray中的键值存起来,避免对数据重复加载。
调试的时候,需要打印日志查看HashSet中存了哪些值,搜了一下,六年前的博客或论坛中给出了这两种方式,以后若遇到其他使用方式再补充。
这里我在HashSet中存的是int类型的数值,此处以Integer为例。
1、使用Iterator
HashSet<Integer> mSet = new HashSet<>(); Iterator<Integer> iterator = mSet.iterator(); int item; while(iterator.hasNext()) { item= iterator.next(); Log.d(TAG, "item = " + item);//TAG 一般定义为类名String }
2、使用foreach
HashSet<Integer> mSet = new HashSet<>(); for(int item : mSet ) { Log.d(TAG, "item = " + item); }
foreach 循环是JDK 5 新增,只有数组和实现了 Iterable 接口的类才能这样写。