java--set,Collections,map

Posted selfdef

tags:

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

set

特点:
无序,
不允许重复
没有索引

   Set<String> set = new HashSet<String>();

   set.add("hello");
   set.add("world");
   set.add("java");

//遍历
   //转数组
   Object[] obj = set.toArray();
   for(int i=0;i!=obj.length;i++)
   
       System.out.println(obj[i]);
   

   //迭代器
   Iterator<String> it = set.iterator();
   while(it.hasNext())
   
       String s = it.next();
       System.out.println(s);
   

Collections:

Collections 与Collection 的区别:
Collection是集合体系的最顶层,包含了集合体系的共性
Collecions是一个工具集,方法都是用于操作Collection

// static int binatySearch(List list, Object key) // 二分查找
    List<Integer> list = new ArrayList<Integer>();
    list.add(1);
    list.add(2);
    list.add(3);
    list.add(4);

    int index = Collctions.binarySearch(list, 4);
// static void copy(List desk, List src): 源列表中数据覆盖到目标列表中
// 注意,目标列表的长度,至少等于源列表的长度
    List<String> src = new ArrayList<String>();
    src.add("hello");
    src.add("world");
    src.add("java");
    src.add("hello");

    List<String> desk = new ArrayList<String>();
    desk.add("");
    desk.add("");
    desk.add("");
    desk.add("");

    Collections.copy(desk,src);
//static void fill(List list,Object obj): 使用指定对象填充列表所有元素
//static void reverse(List list): 反转
//static void shuffle(List list): 随机置换
//static void sort(List list):排序

map

map是具有key和value的集合<key,value>

// Map<String,String> map = new HashMap<String, String>();
// HashMap<String,String> map = new HashMap<String, String>();
// 注意,如果要对自定义类进行去重,需要重写hashCode() 与 equals() 方法

map.put("123456", "xiaoming");
map.put("123113", "xiaohong");
map.put("423115", "lihua");
// value remove(Object key);  // map.remove("423115");  删除对应的key value 返回被删除的 value
// void clear();  // map.clear()  清空所有对应关系
// boolearn containsKey(Object key) // 判断key是否存在
// boolearn containsValue(Object value) // 判断value是否存在
// boolearn isEmpty()  // map.isEmpty();
// int size() 
// Value get(Object key)

//Set(K) keySet()  // 以Set形式返回所有的key
        Set<String> keys = map.keySet();
        for(String key:keys)
        
                System.out.println(key);
        


//Collection() values()
        Collection<String> values = map.values();
        for(String value:values)
                System.out.println(value);
        

//遍历map方式一
    Set<String> keys = map.keySet();
    for(String key,keys)
    
        String value = map.getValue(key);       
    


//Set<Map.Entry<K,V> entrySet()>    //遍历map的方式二
    Set<Map.Entry<String,String>> entrys = map.entrySet();
    for(Map.Entry<String,String>> entry,entrys)
    
        entry.getKey();
        entry.getValue();
    

以上是关于java--set,Collections,map的主要内容,如果未能解决你的问题,请参考以下文章

java collections 可以对 map操作吗

ConcurrentHashMap 和 Collections.synchronizedMap(Map) 有啥区别?

Collections.synchronizedMap(new LinkedHashMap());没有使 Map 线程安全

集合Map可变参数Collections

Java基础Map接口+Collections

11Map可变参数Collections