博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[19/03/27-星期三] 容器_Iterator(迭代器)之遍历容器元素(List/Set/Map)&Collections工具类...
阅读量:5025 次
发布时间:2019-06-12

本文共 3544 字,大约阅读时间需要 11 分钟。

一、概念

      迭代器为我们提供了统一的遍历容器的方式

1 /* 2  *迭代器遍历 3  *  4  */ 5 package cn.sxt.collection; 6  7 import java.security.KeyStore.Entry; 8 import java.util.ArrayList; 9 import java.util.HashMap;10 import java.util.HashSet;11 import java.util.Iterator;12 import java.util.List;13 import java.util.Map;14 import java.util.Set;15 16 17 public class Test_0327_Iterator {18     public static void main(String[] args) {19         //testIteratorList();20         //testIteratorSet();21         testIteratorMap();22 23 24     }25 26     public static void testIteratorList() {
//测试迭代器遍历list27 List
list=new ArrayList
();28 list.add("A");29 list.add("B");30 list.add("D3");31 list.add("C");32 for (Iterator
iter = list.iterator(); iter.hasNext();) {33 String temp = iter.next();34 System.out.print(temp + "\t");//输出遍历结果35 if (temp.endsWith("3")) {
// 删除3结尾的字符串36 iter.remove();37 }38 }39 System.out.println("\n"+list);40 }41 42 43 public static void testIteratorSet() {
//测试迭代器遍历set, 与上边一模一样44 Set
set=new HashSet
();45 set.add("A");46 set.add("B");47 set.add("B3");48 set.add("C");49 for (Iterator
iter = set.iterator(); iter.hasNext();) {50 String temp = iter.next();51 System.out.print(temp + "\t");//输出遍历结果52 }53 }54 55 @SuppressWarnings("unchecked")56 public static void testIteratorMap() { //测试迭代器遍历Map57 Map
map=new HashMap
();58 map.put(101, "A");59 map.put(104, "D");60 map.put(103, "C");61 //不知道哪里错了,心累,就是报错 ,以后解决62 /*Set
> ss = map.entrySet();63 for (Iterator
> iterator = ss.iterator(); iterator.hasNext();) {64 Entry
e = iterator.next();65 System.out.println(e.getKey() + "--" + e.getValue());66 }*/67 68 Set
ss = map.keySet();//第二种遍历方式69 for (Iterator
iterator = ss.iterator(); iterator.hasNext();) {70 Integer key = iterator.next();71 System.out.println(key + "--" + map.get(key));72 }73 }74 }

遍历集合的方法总结:

    链接:http://www.sxt.cn/Java_jQuery_in_action/nine-ergodicset.html

二、Collections工具类

    类 java.util.Collections 提供了对Set、List、Map进行排序、填充、查找元素的辅助方法。

      1. void sort(List) //对List容器内的元素排序,排序的规则是按照升序进行排序。

      2. void shuffle(List) //对List容器内的元素进行随机排列。

      3. void reverse(List) //对List容器内的元素进行逆续排列 。

      4. void fill(List, Object) //用一个特定的对象重写整个List容器。

      5. int binarySearch(List, Object)//对于顺序的List容器,采用折半查找的方法查找特定对象。

【代码示例】

1 /* 2 *测试Collections辅助工具类  3 *Collection 是接口  Collections是个工具类 4  *  5  */ 6 package cn.sxt.collection; 7  8 import java.util.ArrayList; 9 import java.util.Collections;10 import java.util.List;11 12 public class Test_0327_Collections {13     public static void main(String[] args) {14         List
aList = new ArrayList
();15 for (int i = 0; i < 5; i++){16 aList.add("a" + i);17 }18 System.out.println(aList);19 Collections.shuffle(aList); // shuffle:洗牌,随机 随机排列20 System.out.println(aList);21 Collections.reverse(aList); // reverse:倒置 逆续22 System.out.println(aList);23 Collections.sort(aList); //sort: 排序24 System.out.println(aList);25 System.out.println(Collections.binarySearch(aList, "a2")); //binarySearch:二分查找 返回"a2"的下标26 Collections.fill(aList, "hello");//fill:填充 把所有的都换成“hello”27 System.out.println(aList);28 }29 30 }

 

转载于:https://www.cnblogs.com/ID-qingxin/p/10594275.html

你可能感兴趣的文章
存储问题
查看>>
libcurl with telnet
查看>>
spring5 reactive
查看>>
使用python语言编写小游戏
查看>>
Jsoup的简易使用示例
查看>>
定制controller转场动画
查看>>
常用系统服务
查看>>
python 命令行传入参数
查看>>
Oracle hint
查看>>
杭电1047——大数相加
查看>>
jquery切换
查看>>
里氏代换原则
查看>>
C++ 字符串的编码
查看>>
ubuntu中使用docker安装superset环境
查看>>
Lindström–Gessel–Viennot lemma
查看>>
UvaL-7670 上下界可行费用流
查看>>
GeoServer中GeoWebCache(GWC)的使用
查看>>
【2-SAT】学习小结
查看>>
使用地图显示我的位置
查看>>
hibernate查询数据,(user is not mapped)
查看>>