容器类常用方法(1)

来源:互联网 发布:gopro studio mac 编辑:程序博客网 时间:2024/06/08 16:08

1. 添加一组元素

 Arrays.asList方法, Collections.addAll方法,collection.addAll方法

package context;import java.util.ArrayList;import java.util.Arrays;import java.util.Collection;import java.util.Collections;import java.util.List;public class TestCollection {public static void main(String[] args) {//Arrays.asList方法,接收数据或者多个参数Collection<Integer> c = new ArrayList<Integer>(Arrays.asList(1, 2, 3));System.out.println(c);//c.addAll接收collectionInteger[] moreInt = {4, 5, 6, 7};c.addAll(Arrays.asList(moreInt));System.out.println(c);//接收可变参数,数组Collections.addAll(c, 8, 9, 10);System.out.println(c);Collections.addAll(c, moreInt);System.out.println(c);//直接将Arrays.asList获取的list拿来使用,list的大小不能调整List<Integer> list = Arrays.asList(11, 12, 13, 14);  //底层是数据,不能调整大小,调用add,remove方法均报错list.set(0, 99);System.out.println(list);//list.add(21);    //java.lang.UnsupportedOperationException//System.out.println(list);List<Integer> list2 = new ArrayList<Integer>();list2.addAll(Arrays.asList(11, 12, 13, 14));list2.add(22);System.out.println(list2);}}

2. ArrayBlockingQueue常用方法:先进先出,容器大小固定

package context;import java.util.Date;import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.TimeUnit;public class TestCollection2 {public static void main(String[] args) throws InterruptedException {ArrayBlockingQueue<String> q = new ArrayBlockingQueue<String>(2);System.out.println("q.peek: " + q.peek());  //获取不移除q.add("123");System.out.println("q.peek: " + q.peek());  //获取不移除System.out.println("q.take: " + q.take());  //获取移除System.out.println("date1: " + new Date());System.out.println("q.poll: " + q.poll(2, TimeUnit.SECONDS));   //等待2S,获取元素System.out.println("date2: " + new Date());for(int i=0; i<2; i++) {q.offer("a" + i);}//等待添加System.out.println("q.offer: " + q.offer("aa", 1, TimeUnit.SECONDS));System.out.println("date3: " + new Date());q.clear();  //清空所有System.out.println(q.take());        //等待,永久的等待!System.out.println("date4: " + new Date());}}
//outputq.peek: nullq.peek: 123q.take: 123date1: Thu Nov 28 10:26:49 GMT+08:00 2013q.poll: nulldate2: Thu Nov 28 10:26:51 GMT+08:00 2013q.offer: falsedate3: Thu Nov 28 10:26:52 GMT+08:00 2013

 

准备一章写几个知识点,有时间就写点,这篇到这。


 

原创粉丝点击