Collections容器的工具类 (代码)

Collections 操作于容器的工具类

sort(List)
对 List 容器内的元素排序,按照升序进行排序。
对自定义类中元素排序需要重写排序方法

List<String> list = new ArrayList();
list.add("一");
list.add("二");
list.add("三");
list.add("四");
Collections.sort(list);
System.out.println(list);//[一, 三, 二, 四]//[19977,19968, 20108, 22235]

shuffle(List)
对 List 容器内的元素进行随机排列

// void shuffle(List) //对 List 容器内的元素进行随机排列
List<String> list = new ArrayList();
list.add("一");
list.add("二");
list.add("三");
list.add("四");
Collections.shuffle(list);
System.out.println(list);// [二, 四, 三, 一]//[一, 三, 二, 四]//每次随机

reverse(List)
对 List 容器内的元素进行逆序排列

// void reverse(List) //对 List 容器内的元素进行逆续排列 void fill(List, Object)
List<Integer> list = new ArrayList();
list.add(55);
list.add(66);
list.add(22);
list.add(33);
System.out.println(list);//[55, 66, 22, 33]
Collections.reverse(list);
System.out.println(list);//[33, 22, 66, 55]

fill(List, Object)
用一个特定的对象重写整个 List 容器

//用一个特定的对象重写整个 List 容器 
List<Integer> list = new ArrayList();
list.add(55);
list.add(66);
list.add(22);
list.add(33);
Collections.fill(list, 888);
System.out.println(list);//[888, 888, 888, 888]

binarySearch(List, Object)
采用折半查找的方法查找特定对象

//binarySearch(List,Object)//采用折半查找的方法查找特定对象
List<Integer> list = new ArrayList();
list.add(55);
list.add(66);
list.add(22);
list.add(33);		
System.out.println(Collections.binarySearch(list, 66));//1

方法:

add(E e)
添加元素

addAll(Collection<? extends E> c)
将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。

clear()

移除此 collection 中的所有元素(可选操作)。
Collection collection = new ArrayList();
		collection.add('a');
		collection.add("b");
		collection.add("c");
		System.out.println(collection);//[a, b, c]
		collection.clear();
		System.out.println(collection);//[]

contains(Object o)
如果此 collection 包含指定的元素,则返回 true。

Collection c = new ArrayList();
		c.add('a');
		c.add('b');
		c.add('c');
		System.out.println(c.contains('b'));//true

containsAll(Collection<?> c)
如果此 collection 包含指定 collection 中的所有元素,则返回 true。

// An highlighted block
var foo = 'bar';
Collection c = new ArrayList();
		c.add('a');
		c.add('b');
		c.add('c');		
		Collection c2 = new ArrayList();
		c2.add('a');
		c2.add('b');
		System.out.println(c.containsAll(c2));//true

equals(Object o)
比较此 collection 与指定对象是否相等。

Collection c = new ArrayList();
   	c.add('a');
   	c.add('b');
   	c.add('c');		
   	Collection c2 = new ArrayList();
   	c2.add('a');
   	c2.add('b');
   	System.out.println(c.equals(c2));//false

hashCode()
返回此 collection 的哈希码值。

Collection c = new ArrayList();
   	c.add('a');
   	c.add('b');
   	c.add('c');		
Collection c2 = new ArrayList();
   	c2.add('a');
   	c2.add('b');
   	System.out.println(c.hashCode());//126145
   	System.out.println(c2.hashCode());//4066

isEmpty()
如果此 collection 不包含元素,则返回 true。

Collection c = new ArrayList();
	c.add('a');
	c.add('b');
	c.add('c');	
System.out.println(c.isEmpty());//false

iterator()
返回在此 collection 的元素上进行迭代的迭代器
iterator中的方法
boolean iterator .hasNext()
如果仍有元素可以迭代,则返回 true。
E iterator .next()
返回迭代的下一个元素。
void iterator .remove()
从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。

Collection c = new ArrayList();
   	c.add("a");
   	c.add("b");
   	c.add("c");
   	System.out.println(c);//[a, b, c]
   	//迭代器
   	Iterator<String> it=c.iterator();
   	while(it.hasNext()){
   		System.out.print(it.next());//abc
   	}
   	it.remove();
   	System.out.println(c);//[a, b]

remove(Object o)
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。
removeAll(Collection<?> c)
移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作)。

Collection c = new ArrayList();
		c.add("a");
		c.add("b");
		c.add("c");
		c.add("d");
		Collection c2 = new ArrayList();//[b, c]
		c2.add("b");
		c2.add("c");
		System.out.println(c);// [a, b, c, d]
		c.remove("a");
		System.out.println(c);// [b, c, d]
		c.removeAll(c2);
		System.out.println(c);// [d]

retainAll(Collection<?> c)
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。

Collection c = new ArrayList();
   	c.add("a");
   	c.add("b");
   	c.add("c");
   	c.add("d");
   	Collection c2 = new ArrayList();//[b, c]
   	c2.add("b");
   	c2.add("c");
   	System.out.println(c);// [a, b, c, d]		
   	c.retainAll(c2);//true	
   	System.out.println(c);// [b,c]

size()
返回此 collection 中的元素数。

Collection c = new ArrayList();
		c.add("a");
		c.add("b");
		c.add("c");
		c.add("d");
		System.out.println(c.size());//4

toArray()
返回包含此 collection 中所有元素的数组。
toArray(T[] a)
返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同

Collection c = new ArrayList();
		c.add("a");
		c.add("b");
		c.add("c");
		c.add("d");
		System.out.println(c);//[a, b, c, d]//系统默认重写了toString方法
		c.toArray();//[a, b, c, d]
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值