通过学习了LIst,Set,Map这三大容器,我根据我自己理解和认识对List,Set,Map这三种容器的元素的遍历以及迭代进行了以下的编写.
一:List容器元素的遍历.
1.普通的for循环对元素进行遍历.
2.增强for循环即foreach对元素进行遍历.
a.List容器元素的迭代.
3.while循环对元素进行遍历.
b.List容器元素的迭代.
二:Set容器元素的遍历.
4.增强for循环对元素进行遍历.
c.Set容器元素的迭代.
5.while循环对元素进行遍历.
d.Set容器元素的迭代.
三:Map容器元素的遍历.
6.增强for循环对元素进行遍历.
e.Map容器元素的迭代.
7.while循环对元素进行遍历.
f.Map容器元素的迭代.
一.List容器中的元素的特点是元素是有顺序的,且可以有重复元素出现,因此即可以使用普通的for循环进行遍历,也可使用foreach循环进行元素的遍历,List接口下有ArrayList,LinkedList,Vector等子接口.代码如下所示.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19List<String> list =new ArrayList<>(); //添加元素 list.add("赵"); list.add("钱"); list.add("李"); for(int i=0;i<list.size();i++){ System.out.println(list.get(i)); } System.out.println("*****************"); for(String str:list){ System.out.println(str); } System.out.println("------------------"); int x=0; while(x<list.size()){ System.out.println(list.get(x)); x++; } }
二:Set容器,HashSet的元素特点是无序,且不可添加重复元素,,TreeSet的元素是有序存放.所以采用foreach循环的方式对HashSet的元素进行遍历.Set接口下有HashSet,TreeSet等子接口.代码如下.
1
2
3
4
5
6
7
8Set<Integer> set=new HashSet<>(); set.add(5); set.add(2); set.add(0); set.add(0); for(Integer str:set){ System.out.println(str); }
三:Map容器时与List容器,Set容器没有任何联系的一种容器,Map容器中存储方式是双例集合,而List容器,Set容器的存储方式是单例集合.因此不能简单的使用for循环进行遍历,可以keySet与entrySet
两种方法来Map容器中存储的元素进行遍历.且HashMap,TreeMap,等都是Map接口的子接口.代码如下.
1
2
3
4
5
6
7
8
9
10
11
12
13Map<Integer,String> map=new HashMap<>(); //添加信对象 String x1 = map.put(1, "马克思"); String x2 = map.put(2, "恩格斯"); String x3 = map.put(1, "马化腾"); Set<Integer> integers = map.keySet(); for(Integer str1:integers){ String veaul = map.get(str1); System.out.println(str1+"----"+veaul);} System.out.println("************"); Set<Map.Entry<Integer, String>> entries = map.entrySet(); for(Map.Entry<Integer, String> str:entries){ System.out.println("-----"+str);}
2.a.3b.List容器foreach和while循环的迭代.
1
2
3
4
5
6
7
8
9
10
11
12
13
14List<Integer> list=new ArrayList<>(); list.add(5); list.add(2); list.add(0); Iterator<Integer> iterator = list.iterator(); while(iterator.hasNext()){ Integer next = iterator.next(); System.out.println(next); } System.out.println("******************"); for(Iterator<Integer> iterator1 = list.iterator();iterator1.hasNext();){ Integer next1 = iterator1.next(); System.out.println(next1); }
4c.5d.Set容器foreach与while循环的迭代.
1
2
3
4
5
6
7
8
9
10
11
12
13
14Set<Integer> list=new HashSet<>(); list.add(5); list.add(2); list.add(0); Iterator<Integer> iterator = list.iterator(); while(iterator.hasNext()){ Integer next = iterator.next(); System.out.println(next); } System.out.println("******************"); for(Iterator<Integer> iterator1 = list.iterator();iterator1.hasNext();){ Integer next1 = iterator1.next(); System.out.println(next1); }
6 .e,7.f.Map容器foreach与while循环的迭代.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18Map<Integer,String> map=new TreeMap<>(); map.put(1,"赵云"); map.put(2,"马超"); map.put(3,"关羽"); Set<Integer> i1 = map.keySet(); Iterator<Integer> iterator01 = i1.iterator(); while (iterator01.hasNext()){ Integer next03 = iterator01.next(); String s = map.get(next03); System.out.println(next03+"--------"+s); } System.out.println("*********************"); Set<Map.Entry<Integer, String>> entries = map.entrySet(); for( Iterator<Map.Entry<Integer, String>> iterator = entries.iterator();iterator.hasNext();){ Map.Entry<Integer, String> next02 = iterator.next(); String value02 = next02.getValue(); System.out.println(next02+"---------"+value02); }
----------------------以上纯属个人理解,若有不妥之处,还望理解.玛卡巴卡的小小兔.
最后
以上就是高兴麦片最近收集整理的关于List,Set,Map三大容器的遍历与元素的迭代的全部内容,更多相关List,Set,Map三大容器内容请搜索靠谱客的其他文章。
发表评论 取消回复