记载以下,常用的循环方式。
/**
* 集合测试类
*
* @author lenovo
*
*/
public class CollectionTest {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("Hello");
list.add("Hell1o");
list.add("Hell2o");
list.add("Hell3o");
/*
* 直接取值的方法、
*/
// for (String string : list) {
// System.out.println(string);
// }
//
/*
* 迭代器 该方法可以不用担心在遍历的过程中会超出集合的长度。
*/
// Iterator<String> ite=list.iterator();
// while(ite.hasNext()){//判断下一个元素之后有值
// System.out.println(ite.next());
//
// }
/*
* 结合转成数组 再进行遍历
*/
// String [] strArray=new String[list.size()];
// list.toArray(strArray);
// for (int i = 0; i < strArray.length; i++) {
// System.out.println(strArray[i]);
// }
// Map
Map<String, Object> map = new HashMap<String, Object>();
map.put("z1", 123);
map.put("z2", "第二条字符串");
map.put("z3", 445f);
map.put("z4", "随意");
/*
* 第一种 循环取值 通过Map.keySet遍历key和value
*/
// for (String key : map.keySet()) {
// System.out.println("key="+key+"----value="+map.get(key));
// }
/*
* 第二种 通过Map.entrySet使用iterator遍历key和value:
*/
// Iterator<Map.Entry<String, Object>> it=map.entrySet().iterator();
// while(it.hasNext()){
// Map.Entry<String,Object> entry=it.next();
// System.out.println("key="+entry.getKey()+"---value="+entry.getValue());
// }
/*
* 第三种:推荐 尤其是容量大时
*/
// for (Map.Entry<String,Object> enetry:map.entrySet()) {
// System.out.println("key=="+enetry.getKey()+"-----value"+enetry.getValue());
// }
/*
* 第四种 :直接取值 通过Map.values()遍历所有的value,但不能遍历key
*/
for (Object v : map.values()) {
System.out.println("value= " + v);
}
}