package com.ithe
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 4、 Collection和Collections有什么关系?List和Set有什么异同点?Map有哪些常用类,各有什么特点?
*
* @author nn
*解:
* Collections是java.utils下的类,是针对集合类的一个工具类,提供了一系列静态方法,实现堆集合的查找、
*排序、替换、线程安全化(将非同步的集合转换成同步的)等操作。
* Collection是java.utils下的接口,他是各种集合结构的父接口,继承于他的接口主要有Set和List,提供了
*关于集合的一些操作,例如:插入、删除、判断一个元素是否其成员、遍历等。
*
*List: 存入元素有序,元素都有索引。元素可以重复。
*Set:存入元素无序(除了LinkedHashSet),不可以存储重复元素。必须保证元素的唯一性。
*
*Map集合:
* Hashtable:底层是哈希表数据结构,是线程同步的。不可以存储null键 null值。
* HashMap: 底层是哈希数据表结构,是线程不同步的。可以存储null键和值。替代了Hashtable
* TreeMap: 底层是二叉树结构,可以对map集合中的键进行指定顺序的排序。
*/
public class Test4 {
//使用java7特性 演示Collections的用法
public static void main(String[] args) {
Map<String,Integer> map = new LinkedHashMap<>();
for (int i= 97;i<101;i++)
{
map.put(String.valueOf((char)i), i);
}
//打印
for(String set:map.keySet())
{
System.out.println("key:"+set+",value:"+map.get(set));
}
//把map中的值转为list集合
Collection<Integer> collection = map.values();
List<Integer> list = new ArrayList<>(collection);
Collections.sort(list);//排序
System.out.println(Collections.max(list));//返回最大值
Collections.reverse(list);//按逆序排列
for(Integer in: list)
{
System.out.println(in);
}
}
}
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 4、 Collection和Collections有什么关系?List和Set有什么异同点?Map有哪些常用类,各有什么特点?
*
* @author nn
*解:
* Collections是java.utils下的类,是针对集合类的一个工具类,提供了一系列静态方法,实现堆集合的查找、
*排序、替换、线程安全化(将非同步的集合转换成同步的)等操作。
* Collection是java.utils下的接口,他是各种集合结构的父接口,继承于他的接口主要有Set和List,提供了
*关于集合的一些操作,例如:插入、删除、判断一个元素是否其成员、遍历等。
*
*List: 存入元素有序,元素都有索引。元素可以重复。
*Set:存入元素无序(除了LinkedHashSet),不可以存储重复元素。必须保证元素的唯一性。
*
*Map集合:
* Hashtable:底层是哈希表数据结构,是线程同步的。不可以存储null键 null值。
* HashMap: 底层是哈希数据表结构,是线程不同步的。可以存储null键和值。替代了Hashtable
* TreeMap: 底层是二叉树结构,可以对map集合中的键进行指定顺序的排序。
*/
public class Test4 {
//使用java7特性 演示Collections的用法
public static void main(String[] args) {
Map<String,Integer> map = new LinkedHashMap<>();
for (int i= 97;i<101;i++)
{
map.put(String.valueOf((char)i), i);
}
//打印
for(String set:map.keySet())
{
System.out.println("key:"+set+",value:"+map.get(set));
}
//把map中的值转为list集合
Collection<Integer> collection = map.values();
List<Integer> list = new ArrayList<>(collection);
Collections.sort(list);//排序
System.out.println(Collections.max(list));//返回最大值
Collections.reverse(list);//按逆序排列
for(Integer in: list)
{
System.out.println(in);
}
}
}