ListSetMap的使用

Posted Pres_Cheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListSetMap的使用相关的知识,希望对你有一定的参考价值。

1.List(接口)

  List接口的特点:

  a.List接口可以存放任意数据,且在接口中,数据可以重复。

  b.List中提供了高效的插入和移除多个元素的方法。

 

  List常用的子类

  a.ArrayList

  b.Vector

 

  Arraylist代码实例演示:

  

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

/**
 * Created by Pres_cheng on 2016/9/4.
 */
public class UsingArrayList {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("b");
        list.add("c");
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        list.add("a");
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        list.remove(0);
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        System.out.println("[0]:"+list.get(0));
        System.out.println("[1]:"+list.get(1));
    }
}

  Vector代码实例演示:

 

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

/**
 * Created by Pres_cheng on 2016/9/4.
 */
public class UsingVector {
    public static void main(String args[]){
        List<String> list = new Vector<>();
        list.add("a");
        list.add("b");
        list.add("c");
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        list.add("a");
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        list.remove(0);
        for (int i = 0; i < list.size(); i++)
            System.out.println(list.get(i));
        System.out.println("------------");

        System.out.println("[0]:"+list.get(0));
        System.out.println("[1]:"+list.get(1));
    }
}

 

从上述代码可以看出ArrayList和Vector非常相似,那他们的区别是什么呢?

Vector是JDK1.0以后推出的,性能较低,用于同步处理数据,但线程相对安全。

ArrayList是JDK1.2以后推出的,性能高,用于异步处理数据,但线程相对不安全。

 

2.Set(接口)

  Set接口的特点:Set接口可以存放任意数据,数据不可重复。

 

  Set接口常用的子类

  a.HashSet : HashSet中存储数据是无序的

  b.TreeSet : TreeSet中存储数据是按ASCII码表的顺序排列的

 

3.Map(接口)

  Map接口的特点

  a.Map接口存放数据的形式是以键值对的形式存放如:

  key-->value

  "name‘-->"pres_cheng"

  "age"-->"23"

  键(key)的类型要一致,值(value)的类型也要一致。

 

  Iterator(迭代器)的使用

  Iterator自带常用方法:

  a.hasNext

  b.next

  c.remove

 

  代码实例演示:

  

import java.util.*;

/**
 * Created by Pres_cheng on 2016/9/4.
 */
public class UsingMap {
    public static void main(String[] args) {
        Map<String, String> maps = new HashMap<>();
        maps.put("name", "pres_cheng");
        maps.put("age", "23");
        System.out.println(maps);
        System.out.println("size:" + maps.size());
        Set<String> set = maps.keySet();
        System.out.println("key:" + set);
        Collection<String> collection = maps.values();
        System.out.println("value:" + collection);

        System.out.println("- - - - - - - -");

        //迭代器输出方法
        Iterator<String> iterator = set.iterator();
        while (iterator.hasNext()) {
            System.out.println("key:" + iterator.next());
        }

        Iterator<String> iterator1 = collection.iterator();
        while (iterator1.hasNext()) {
            System.out.println("value:" + iterator1.next());
        }
    }
}

 

  

  

  

以上是关于ListSetMap的使用的主要内容,如果未能解决你的问题,请参考以下文章

Java 集合转换(数组ListSetMap相互转换)

ListSetMap

ListSetMap集合大杂烩

Java之ListSetMap区别和使用场景

ListSetMap是继承自Collection吗?

Java中 ListSetMap 之间的区别