编程营地首页推荐程序员

java集合类详解

2017-02-26  本文已影响622人  在南方的北方人_Elijah

Collection

List

demo

package com.test.CollectionDemo;

import java.util.ArrayList;
import java.util.List;
import java.util.Vector;

/**
 * Created by elijahliu on 2017/2/26.
 */
public class CollectionDemo {

    public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        list.add("a");
        list.add("b");
        list.add("a");
        for (String i:list) {
            System.out.println(i);
        }

        list.remove(0);//delete
        System.out.println(list.indexOf("a"));//search a

        System.out.println(list.isEmpty());
    }

    //vectordemo
    public static void ListDemo2(){
        List<String> list = new Vector<String>();
        list.add("a");
        list.add("b");
        for (String i : list
                ) {
            System.out.println(i);
        }
    }
}

ArrayList和Vector比较

比较 ArrayList Vector
推出时间 JDK1.2之后推出 JDK1.0之后推出
性能 采用异步处理的方式,性能高 采用同步处理的方式,性能低
线程安全 属于非线程安全 属于线程安全

Set

demo

public static void setDemo() {

        Set<String> s = new HashSet<>();
        s.add("a");
        s.add("b");
        s.add("c");
        s.add("d");
        s.add("d");
        s.add("e");
        System.out.println(s);

        s = new TreeSet<String>();
        s.add("a");
        s.add("c");
        s.add("b");
        s.add("d");
        s.add("d");
        s.add("e");
        System.out.println(s);//打印出来是有序的

    }

Iterator

过程

demo

    public static void IteratorDemo() {
        List<String> list = new ArrayList<String>();
        list.add("a");
        list.add("c");
        list.add("b");
        list.add("d");
        list.add("d");
        list.add("e");

        Iterator<String> iter = list.iterator();
        //这里实例话Iterator有点不同,是通过要进行迭代的实例话对象调用iterator方法来进行实例化的
        while (iter.hasNext()) {
            System.out.println(iter.next());
        }
        //hasNext()判断是否下一个元素为空,next()用于获取下一个元素

    }

ps:不能在迭代输出的时候进行iter.remove()删除操作,会报错

Map

demo

    public static void mapDemo() {
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("1", 1);
        map.put("2", 2);
        map.put("3", 3);
        map.put("4", 4);

        int i = (int) map.get("3");//提取键值

        boolean isKey = map.containsKey("1");//看key是不是存在 返回boolean
        boolean isValue = map.containsValue(1);//看value是不是存在,返回boolean

        Set<String> s =map.keySet(); //map.keySet()可以将所有的键都提取出来,返回的是一个Set集合
        //map.values()返回所有值,返回是一个Collection 集合
        Iterator<String> itr= s.iterator();//使用set集合调用迭代器Iterator来进行输出

        while (itr.hasNext()) {
            System.out.println(itr.next());
        }
    }
上一篇下一篇

猜你喜欢

热点阅读