• HashMap


    import java.util.*;

    public class MapTest {

        // HashMap中的key是无序且不可重复的?那么HashMap如何保证其key无序且不可重复呢?
        // 参见HasSet如何来保证数据无序且不可重复!因为HashSet就是用HashMap来实现的
        public static void testHashMap() {
            Map<String, String> map = new HashMap<String, String>();

            // 向Map集合中添加数据
            map.put("aa", "Hello1");
            map.put("dd", "Hello1");
            map.put("cc", "Hello2");
            map.put("tt", "Hello3");
            map.put("ff", "Hello7");
            map.put("aa", "NewHello1"); // 当key重复的时候,新的value会覆盖原来的value
            System.out.println("集合中数据的对数:" + map.size());

            // 从集合中查询数据
            System.out.println("集合中是否有key = dd ? " + map.containsKey("dd"));
            System.out.println("集合中是否有vlaue = Hello2 ? "
                    + map.containsValue("Hello2"));

            System.out.println("=====================================");
            // 遍历集合
            // 方式1:取出集合中所有的vlaue,保存到一个Collection中
            Collection<String> coll = map.values();
            for (String value : coll) {
                System.out.println(value);
            }

            System.out.println("=====================================");
            // 方式2:取出集合中所有的key,保存到一个Set中(实际上是HashSet)
            Set<String> set = map.keySet();
            for (String key : set) {
                // 根据key取得value
                String value = map.get(key);
                System.out.println("key=" + key + " , value=" + value);
            }

            System.out.println("=====================================");
            // 方式3:取出集合中所有的Entry(Entry中一个key,一个value),保存到一个Set中
            Set<Map.Entry<String, String>> set1 = map.entrySet();
            Iterator<Map.Entry<String, String>> it1 = set1.iterator();
            while (it1.hasNext()) {
                Map.Entry<String, String> entry = it1.next();
                String key = entry.getKey();
                String value = entry.getValue();
                System.out.println("key=" + key + " , value=" + value);
            }

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

            // 从Map集合中删除数据.通过key来删除这对数据,返回的是该key对应的value
            String value = map.remove("cc");
            System.out.println("数据删除成功,返回的结果是:" + value);

            System.out.println("集合中数据的对数:" + map.size());
        }
        
        
        // TreeMap中key是不可重复但是可以排序的.那么TreeMap如何保证其key不可重复并且可以排序呢?
        // 参见TreeSet如何保证数据不可重复并且可以排序!因为TreeSet就是用TreeMap来实现的
        public static void testTreeMap() {
            Map<String, String> map = new TreeMap<String, String>();

            // 向Map集合中添加数据
            map.put("aa", "Hello1");
            map.put("dd", "Hello1");
            map.put("cc", "Hello2");
            map.put("tt", "Hello3");
            map.put("ff", "Hello7");
            map.put("aa", "NewHello1"); // 当key重复的时候,新的value会覆盖原来的value
            System.out.println("集合中数据的对数:" + map.size());

            // 从集合中查询数据
            System.out.println("集合中是否有key = dd ? " + map.containsKey("dd"));
            System.out.println("集合中是否有vlaue = Hello2 ? "
                    + map.containsValue("Hello2"));

            System.out.println("=====================================");
            // 遍历集合
            // 方式1:取出集合中所有的vlaue,保存到一个Collection中
            Collection<String> coll = map.values();
            for (String value : coll) {
                System.out.println(value);
            }

            System.out.println("=====================================");
            // 方式2:取出集合中所有的key,保存到一个Set中(实际上是TreeSet)
            Set<String> set = map.keySet();
            for (String key : set) {
                // 根据key取得value
                String value = map.get(key);
                System.out.println("key=" + key + " , value=" + value);
            }

            System.out.println("=====================================");
            // 方式3:取出集合中所有的Entry(Entry中一个key,一个value),保存到一个Set中
            Set<Map.Entry<String, String>> set1 = map.entrySet();
            Iterator<Map.Entry<String, String>> it1 = set1.iterator();
            while (it1.hasNext()) {
                Map.Entry<String, String> entry = it1.next();
                String key = entry.getKey();
                String value = entry.getValue();
                System.out.println("key=" + key + " , value=" + value);
            }

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

            // 从Map集合中删除数据.通过key来删除这对数据,返回的是该key对应的value
            String value = map.remove("cc");
            System.out.println("数据删除成功,返回的结果是:" + value);

            System.out.println("集合中数据的对数:" + map.size());
        }

        
        
        public static void testHashtable() {
            Map<String, String> map = new Hashtable<String, String>();

            // 向Map集合中添加数据
            map.put("aa", "Hello1");
            map.put("dd", "Hello1");
            map.put("cc", "Hello2");
            map.put("tt", "Hello3");
            map.put("ff", "Hello7");
            map.put("aa", "NewHello1"); // 当key重复的时候,新的value会覆盖原来的value
            System.out.println("集合中数据的对数:" + map.size());

            // 从集合中查询数据
            System.out.println("集合中是否有key = dd ? " + map.containsKey("dd"));
            System.out.println("集合中是否有vlaue = Hello2 ? "
                    + map.containsValue("Hello2"));

            System.out.println("=====================================");
            // 遍历集合
            // 方式1:取出集合中所有的vlaue,保存到一个Collection中
            Collection<String> coll = map.values();
            for (String value : coll) {
                System.out.println(value);
            }

            System.out.println("=====================================");
            // 方式2:取出集合中所有的key,保存到一个Set中(实际上是HashSet)
            Set<String> set = map.keySet();
            for (String key : set) {
                // 根据key取得value
                String value = map.get(key);
                System.out.println("key=" + key + " , value=" + value);
            }

            System.out.println("=====================================");
            // 方式3:取出集合中所有的Entry(Entry中一个key,一个value),保存到一个Set中
            Set<Map.Entry<String, String>> set1 = map.entrySet();
            Iterator<Map.Entry<String, String>> it1 = set1.iterator();
            while (it1.hasNext()) {
                Map.Entry<String, String> entry = it1.next();
                String key = entry.getKey();
                String value = entry.getValue();
                System.out.println("key=" + key + " , value=" + value);
            }

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

            // 从Map集合中删除数据.通过key来删除这对数据,返回的是该key对应的value
            String value = map.remove("cc");
            System.out.println("数据删除成功,返回的结果是:" + value);

            System.out.println("集合中数据的对数:" + map.size());
        }
        
        public static void main(String[] args) {
            //testHashMap();
            //testTreeMap();
            testHashtable();
        }

    }

  • 相关阅读:
    Python数据抓取(3) —抓取标题、时间及链接
    Python数据抓取(2) —简单网络爬虫的撰写
    Python数据抓取(2) —简单网络爬虫的撰写
    Apache 显示网页
    Linux 启动 Apache 时报错:(98)Address already in use: make_sock: could not bind to address [::]:80
    Shell编程 之 条件判断式语句
    Shell编程 之 字符处理命令
    Shell编程 之 字符截取命令
    Shell编程 之 正则表达式
    Shell编程 之 环境变量配置文件
  • 原文地址:https://www.cnblogs.com/zwjcom/p/11174830.html
Copyright © 2020-2023  润新知