详解JAVA map,list,set
1、Map接口和Collection接口是所有集合框架的父接口
Collection接口的子接口包括:
Set接口和List接口
Map接口的实现类主要有:
HashMap、TreeMap、Hashtable、ConcurrentHashMap以及Properties等
Set接口的实现类主要有:
HashSet、TreeSet、LinkedHashSet等
List接口的实现类主要有:ArrayList、LinkedList、Stack以及Vector等
List,Set,Map三者的区别?List、Set、Map 是否继承自 Collection 接口?List、Map、Set 三个接口存取元素时,各有什么特点?
2、Collection集合主要有List和Set两大接口
(1)List:是一个有序,元素可以重复。常用的实现类有 ArrayList、LinkedList 和 Vector。
(2)Set:是一个无序,不可以存储重复元素,只允许存入一个null元素,Set 接口常用实现类是 HashSet、LinkedHashSet 以及 TreeSet。
3、Map
Map是一个键值对集合,存储键、值和之间的映射。 Key无序,唯一;value 不要求有序,允许重复。Map没有继承于Collection接口,从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象。
Map 的常用实现类:HashMap、TreeMap、HashTable、LinkedHashMap、ConcurrentHashMap
(1)Map 存元素和取元素和删除(put、get、remove)
import java.util.HashMap;
/**
* Map 存元素和取元素和删除(put、get、remove)
* @author 小治的高等数学
*
*/
public class Map1 {
public static void main(String[] args) {
// 创建 HashMap 对象 Sites
HashMap<String, String> sites = new HashMap<String, String>();
// 添加键值对
sites.put("1", "Google");
sites.put("2", "Runoob");
sites.put("3", "Taobao");
sites.put("4", "Zhihu");
// 输出Map中所有元素
System.out.println(sites);
// 拿出Map中key的为1的value的值
System.out.println(sites.get("1"));
System.out.println(sites.get("3"));
sites.remove("3");
System.out.println(sites.get("3"));
System.out.println(sites);
}
}
(2)循环Map
package basics.map;
import java.util.HashMap;
import java.util.Map.Entry;
public class Map2 {
public static void main(String[] args) {
// 创建 HashMap 对象 Sites
HashMap<Integer, String> sites = new HashMap<Integer, String>();
// 添加键值对
sites.put(4, "Zhihu");
sites.put(1, "Google");
sites.put(2, "Runoob");
sites.put(3, "Taobao");
sites.put(4, "Zhihu2");
// 只循环 key
for (Integer i : sites.keySet()) {
System.out.println("key: " + i + " value: " + sites.get(i));
}
// 只循环 value 值
for(String value: sites.values()) {
// 输出每一个 value
System.out.println(value + ", ");
}
// 循环 key 和 value
for (Entry<Integer, String> entry : sites.entrySet()) {
System.out.println("只输出key "+entry.getKey());
System.out.println("只输出value "+entry.getValue());
}
for (int i = 0; i <= sites.size(); i++) {
System.out.println(sites.get(i));
}
}
}
Java编程技术
Spring读取@Component组件(派生性),有两种实现方式,一种是反射,一种是ASM。反射性能低主要是要loadClass,毕竟Class,需要Load,比如扫描”com ...
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~