博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Collections类
阅读量:7030 次
发布时间:2019-06-28

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

Collections类为集合类的一些工具类。都为静态方法。经常用法例如以下:

@Test	public 
void test() { List
list = new ArrayList
(); list.add("3"); list.add("1"); list.add("6"); list.add("2"); list.add("5"); /**增添“9” **/ Collections.addAll(list, "9"); printCollection(list); // 316259 /** 依据元素的自然顺序 对指定列表按升序进行排序。

**/ Collections.sort(list); /** 用二分查找法查找list的元素的位置(使用之前必须使用sort先进行排序) **/ Collections.binarySearch(list, "6");// 返回6的位置4 /** 继承Comparator接口 ( 假设o1小于o2,返回一个负数;假设o1大于o2,返回一个正数;假设他们相等。则返回0;) **/ Collections.sort(list, new Comparator<String>() { @Override public int compare(String o1, String o2) { // TODO Auto-generated method stub return Integer.parseInt(o2) - Integer.parseInt(o1); // 降序排列 } }); printCollection(list);// 965321 /** * 使用copy复制集合数据时,必须保证新集合中的size大于或等于旧集合中的size(注:ArrayList中的size和容纳量是有差别的。 * 初始化的时候能够初始化其容纳量,可是size一直为 * 0,当进行add时候才会数量加1,为保证size的数量,初始化採取其构造方法,形式例如以下:(Arrays.asList(new * String[list.size()])) **/ List<String> list1 = new ArrayList<String>( Arrays.asList(new String[list.size()])); Collections.copy(list1, list); printCollection(list1);// 965321 List<String> list2 = new ArrayList(); /** 假设两个指定 collection 中没有同样的元素,则返回 true。 **/ Collections.disjoint(list, list2);// 返回true /** 用一个元素取代集合中全部元素 **/ Collections.fill(list, "2"); printCollection(list);// 返回222222 /** 元素在集合中出现的次数 **/ Collections.frequency(list, "22"); /** 返回集合中最大的 **/ Collections.max(list1);// 返回9 /** 集合中最小的 **/ Collections.min(list1); // 返回1 /** 复制5个參数90成为一个新的集合list3 ,且新的集合不可更改(可初始化一个新创建的 List) **/ List list3 = Collections.nCopies(5, "90"); printCollection(list3);// 返回9090909090 /** * 将list集合中为2的值替换为1, 注:使用 newVal 替换 list 中满足 (oldVal==null ? e==null : * oldVal.equals(e)) 的每一个 e 元素。 **/ Collections.replaceAll(list, "2", "1"); printCollection(list); // 返回111111 /** 随机交换位置 **/ // Collections.shuffle(list1); /** 反转集合位置 **/ Collections.reverse(list1);// 123569 printCollection(list1); // 交换集合的位置,位置1和位置2互调 Collections.swap(list1, 0, 1);// 213569 printCollection(list1); // 总体右移动一位 Collections.rotate(list1, 1); // 921356 printCollection(list1); } public void printCollection(Collection<String> collection) { System.out.println(); Iterator it = (Iterator) collection.iterator(); while (it.hasNext()) { System.out.print(it.next()); } }

转载地址:http://eugxl.baihongyu.com/

你可能感兴趣的文章
React Native学习笔记(一)附视频教学
查看>>
记Promise得一些API
查看>>
javascript事件之调整大小(resize)事件
查看>>
20145234黄斐《Java程序设计》第六周学习总结
查看>>
【CLRS】《算法导论》读书笔记(四):栈(Stack)、队列(Queue)和链表(Linked List)...
查看>>
hibernate 和 mybatis区别
查看>>
互联网广告综述之点击率特征工程
查看>>
HDU3421 Max Sum II【序列处理】
查看>>
POJ NOI MATH-7653 地球人口承载力估计
查看>>
iOS UI高级之网络编程(HTTP协议)
查看>>
使用cocoaPods import导入时没有提示的解决办法
查看>>
iOS数据持久化存储之归档NSKeyedArchiver
查看>>
JavaScript面向对象
查看>>
Intellij修改模板代码
查看>>
2.页面布局示例笔记
查看>>
一些老游戏CPU 100%占用的解决方法
查看>>
f5基本介绍
查看>>
博前语
查看>>
Java SE核心之一:常用类,包装类,其他基本数据类型包装类。
查看>>
郑捷《机器学习算法原理与编程实践》学习笔记(第二章 中文文本分类(一))...
查看>>