您的位置:首页 > 其它

ArrayList、Map、Set集合的遍历方法总结

2019-01-04 20:50 267 查看

集合的遍历

1、遍历ArrayList

public class ArrayListTest{
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
list.add("Hello"); list.add("Java");
list.add("ArrayList");
//方法一:使用for或foreach遍历
for (String str : list) {
System.out.println(str);
}
//方法二:将集合转化为数组,然后进行for或foreach遍历
String[] strArray=new String[list.size()];
list.toArray(strArray);
for(int i=0;i<strArray.length;i++) {
System.out.println(strArray[i]);
}
//方法三:使用迭代器器
Iterator<String> iterator=list.iterator();
while(iterator.hasNext()) { //判断下一个元素之后有值
System.out.println(iterator.next());
}
}
}
---------------------

原文:https://blog.csdn.net/IT_PL/article/details/79150046

2.遍历Map

public class MapTest {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "Hello");
map.put("2", "Java");
map.put("3", "Map");
//方法一:先通过Map.keySet遍历key,再通过key获取value值
for (String key : map.keySet()) {
System.out.println("key= "+ key + " and value= " + map.get(key));
}
//方法二:通过Map.entrySet使用iterator遍历键值对对象,再通过getKey()和getValue()获取key和value的值
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//方法三:通过Map.entrySet遍历key和value
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//方法四:通过Map.values()遍历所有的value,但不能遍历key
for (String value : map.values()) {
System.out.println("value= " + value);
}
}
}

3.遍历Set

public class SetTest {
public static void main(String[] args) {
HashSet<String> sets = new HashSet<>();
sets.add("h");
sets.add("e");
sets.add("l");
sets.add("l");//不可重复
sets.add("0");
//方法一:迭代遍历
for (Iterator<String> iterator = sets.iterator(); iterator.hasNext();){
System.out.println(iterator.next());
}
//输出结果:
/*
* 0
* e
* h
* l
*/
//可以看出Set集合是不可重复(添加重复操作不会报错)且无序的
//方法二:foreach循环(没有普通for循环方法)
for (String value:sets) {
System.out.println(value);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: