Java Collections newSetFromMap()

newSetFromMap() 返回指定映射支持的Set。得到的Set与底层实现映射有相同的顺序、并发性和性能特征。

1 语法

public static <E> Set<E> newSetFromMap(Map<E,Boolean> map)  

2 参数

map:这是一个Map。

3 返回值

返回的Set支持由指定映射。

4 Collections newSetFromMap()示例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java Collections.newSetFromMap的例子
 */
import java.util.*;

public class Demo {

    public static void main(String[] args) {
        // create map
        Map<String, Boolean> map = new WeakHashMap<String, Boolean>();
        // create a set from map
        Set<String> set = Collections.newSetFromMap(map);
        // add values in set
        set.add("Eric");
        set.add("Paul");
        set.add("Jack");
        // set and map values are
        System.out.println("Set is: " + set);
        System.out.println("Map is: " + map);
    }
}

输出结果为:

Set is: [Eric, Jack, Paul]
Map is: {Eric=true, Jack=true, Paul=true}

5 Collections newSetFromMap()示例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java Collections.newSetFromMap的例子
 */
import java.util.*;

public class Demo {

    public static void main(String[] args) {
        Map<Integer, Boolean> map = new IdentityHashMap<Integer, Boolean>();
        Set<Integer> set = Collections.newSetFromMap(map);
        set.add(1);
        set.add(1);
        set.add(1);
        // set and map values are
        System.out.println("Set is: " + set);
        System.out.println("Map is: " + map);
    }
}

输出结果为:

Set is: [1]
Map is: {1=true}

6 Collections newSetFromMap()示例3

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java Collections.newSetFromMap的例子
 */
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;

public class Demo {

    public static void main(String[] args) {
        Set<String> users = Collections.newSetFromMap(new ConcurrentHashMap<String, Boolean>());
        System.out.println("Users: " + users);
        users.add("Java");
        users.add("PHP");
        System.out.println("Users: " + users);
    }
}

输出结果为:

Users: []
Users: [Java, PHP]

 

热门文章

优秀文章