4.Collections.fill(list,"替换后的值"); //此方法可以将list中的所有的值替换成指定的值
- 实例:
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
-
- /**
- * 使用Collections.fill()方法实现集合元素的替换操作
- * @author lenovo
- *
- */
- public class CollectionsFillDemo
- {
- public static void main(String[] args)
- {
- collectionsFillMethod();
- }
- public static void collectionsFillMethod()
- {
- List<String> list = new ArrayList<String>();
- list.add("aaaa");
- list.add("cedsg");
- list.add("bsbd");
- list.add("sbd");
- list.add("fbd");
- list.add("aa");
- sop("排序前:"+list);
- Collections.max(list);
- sop("排序后:"+list);
- Collections.fill(list,"aa");
- sop("替换后:"+list);
- }
- public static void sop(Object obj)
- {
- System.out.println(obj);
- }
- }
- 小练习:利用Collections.fill()方法替换集合中的指定元素?
复制代码 5.Collections.replaceAll(list,oldValue,newValue);//此方法可以将集合中的oldValue的值
替换成newValue
实例:
- public class CollectionsRepleaceAllDemo
- {
- public static void main(String[] args)
- {
- collectionsReplaceAllMethod();
- }
- public static void collectionsReplaceAllMethod()
- {
- List<String> list = new ArrayList<String>();
- list.add("aaaa");
- list.add("cedsg");
- list.add("bsbd");
- list.add("sbd");
- list.add("fbd");
- list.add("aa");
- list.add("aa");
- list.add("aa");
- sop("替换前:"+list);
- Collections.replaceAll(list,"aa","zzzz");
- sop("替换后:"+list);
- }
- public static void sop(Object obj)
- {
- System.out.println(obj);
- }
- }
复制代码 6.Collections.reverse(list);//该方法可以实现将list集合中的元素进行反转
实例:
- public class CollectionsReverseDemo
- {
- public static void main(String[] args)
- {
- collectionsReverseMethod();
- }
- public static void collectionsReverseMethod()
- {
- List<String> list = new ArrayList<String>();
- list.add("aaaa");
- list.add("cedsg");
- list.add("bsbd");
- list.add("sbd");
- list.add("fbd");
- list.add("aa");
- list.add("aa");
- list.add("aa");
- sop("反转前:"+list);
- Collections.reverse(list);
- sop("翻转后:"+list);
- }
- public static void sop(Object obj)
- {
- System.out.println(obj);
- }
- }
复制代码 7.Collections.reverseOrder(比较器);//该方法可以对一个比较器强行进行逆转
8.synchronizedList(list);//此方法可以将线程不同步的的list转换成线程安全的(该方法适用于list,set,map集合)
运行完成后返回一个线程同步的集合
9.Collections.swap(list,int i,int j);//该方法是将list集合中的索引i位置的元素和索引j位置
的元素进行置换(之适用于list集合)
10.Collections.shuffle(list);//该方法可以对原集合中的元素进行随机排序
该方法可以实现随机的效果(例如随机发牌的操作)
七:A rrays工具类
1.Arrays.toString(数组);//该方法返回指定数组的字符串表现形式
2.数组变集合:
Arrays.asList(数组);//该方法返回指定数组的集合(将数组转换为集合)将数组转换成集合,不可以使用集合的增删
方法,因为数组的长度是固定的,如果进行增删会发生UnsupporteOpeationException不支持操作异常
如果我们进行操作的数组是一个对象数组的话,使用asList()方法进行转换操作时原数组中的元素就直接成为
集合中的元素,如果进行操作的数组是一个基本类型的数组的话,使用asList()方法进行 转换操作时,会将整
个数组看作是一个元素存入集合;
3.集合变数组
集合.toArray(数组);//该方法返回一个和指定数组相同类型的数组;
①:指定类型数组的长度:当指定数组的长度小于了集合的size时,那么该方法内部就会产生一个新的数组,长度为集合的size
当指定数组的长度大于了集合的size,那么就不会产生新的数组,而是使用传递进来的数组
所以创建数组时,创建一个刚刚好的最优,也就是创建数组时,数组的长度最好是用list.size()来定义
例如;String[] str = list.toArray(new String[list.size()]);
②:为什么要将集合转换为数组?
答:为了限定对元素的操作,这样可以减少用户对原集合的操作范围,限制增删
--毕老师学习笔记之泛型完--
|
|