• Java Map


    public class Person {
    
        public static void main(String[] args) {
    
            Map<Integer, String> map = new HashMap<Integer, String>();
    
            map.put(12, "aaa");
            map.put(22, "df");
            map.put(72, "awe");
            map.put(32, "34");
            map.put(52, "fhd");
            
    //        Set<Integer> mapSet = map.keySet();      //获取包含所有key的Set容器
    //        Iterator<Integer> it = mapSet.iterator();
    //        while(it.hasNext())
    //        {
    //            Integer x = it.next();
    //            System.out.println(x + " : " + map.get(x));
    //        }
    
    
    //        Collection<String> coll = map.values();    //获取包含所有value的Collection容器
    //        Iterator<String> it = coll.iterator();
    //        while(it.hasNext())
    //        {
    //            System.out.println(it.next());
    //        }
            
            Set<Map.Entry<Integer, String>> mapEntries = map.entrySet();
            Iterator<Map.Entry<Integer, String>> it = mapEntries.iterator();
            while(it.hasNext())
            {
                Map.Entry<Integer, String> mEntry = it.next();
                System.out.println(mEntry.getKey() + " : " + mEntry.getValue());
            }
            
    
        }
    }
    Java Map - darrell - DARRELL的博客
     
    class Car 
    {
        private String name;
        private int number;
        private double weight;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getNumber() {
            return number;
        }
        public void setNumber(int number) {
            this.number = number;
        }
        public double getWeight() {
            return weight;
        }
        public void setWeight(double weight) {
            this.weight = weight;
        }
        
        
        public Car(String name, int number, double weight) {
            this.name = name;
            this.number = number;
            this.weight = weight;
        }
        @Override                                                
        public int hashCode() {
            final int prime = 31;
            int result = 1;
            result = prime * result + ((name == null) ? 0 : name.hashCode());
            result = prime * result + number;
            long temp;
            temp = Double.doubleToLongBits(weight);
            result = prime * result + (int) (temp ^ (temp >>> 32));
            return result;
        }
        @Override
        public boolean equals(Object obj) {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Car other = (Car) obj;
            if (name == null) {
                if (other.name != null)
                    return false;
            } else if (!name.equals(other.name))
                return false;
            if (number != other.number)
                return false;
            if (Double.doubleToLongBits(weight) != Double
                    .doubleToLongBits(other.weight))
                return false;
            return true;
        }
        
        
    }
    
    
    public class Person {
    
        public static void main(String[] args) {
    
            Map<Car, String> map = new Hashtable<Car, String>();
            
            map.put(new Car("aaa", 111,1.02), "abc");
            map.put(new Car("bbb", 222,1.02), "bcd");
            map.put(new Car("ccc", 333,1.02), "cde");
            map.put(new Car("aaa", 111,1.02), "qqq");
            map.put(new Car("bbb", 234,1.02), "bcd");
    
            Car car = new Car("zzz", 999,1.01);
            map.put(car, "iii");
    
            Set<Map.Entry<Car, String>> mapEntries = map.entrySet();
            Iterator<Map.Entry<Car, String>> it = mapEntries.iterator();
            while(it.hasNext())
            {
                Map.Entry<Car, String> mEntry = it.next();
                System.out.println(mEntry.getKey().getName() + " : "  + mEntry.getKey().getNumber() + " :" + mEntry.getValue());
            }
            
            System.out.println(map.containsKey(new Car("aaa", 111,1.02)));
            System.out.println(map.containsKey(car));
        }
    }
    Java Map - darrell - DARRELL的博客
     
    Java Map - darrell - DARRELL的博客
     
    class Car
    {
        private String name;
        private int number;
        private double weight;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getNumber() {
            return number;
        }
        public void setNumber(int number) {
            this.number = number;
        }
        public double getWeight() {
            return weight;
        }
        public void setWeight(double weight) {
            this.weight = weight;
        }
        
        
        public Car(String name, int number, double weight) {
            this.name = name;
            this.number = number;
            this.weight = weight;
        }
    
    }
    
    
    public class Person {
    
        public static void main(String[] args) {
    
            Map<Car, String> map = new TreeMap<Car, String>();
            
            map.put(new Car("aaa", 111,1.02), "abc");
            map.put(new Car("bbb", 222,1.02), "bcd");
            map.put(new Car("ccc", 333,1.02), "cde");
            map.put(new Car("aaa", 111,1.02), "qqq");
            map.put(new Car("bbb", 234,1.02), "bcd");
    
    
            Set<Map.Entry<Car, String>> mapEntries = map.entrySet();
            Iterator<Map.Entry<Car, String>> it = mapEntries.iterator();
            while(it.hasNext())
            {
                Map.Entry<Car, String> mEntry = it.next();
                System.out.println(mEntry.getKey().getName() + " : "  + mEntry.getKey().getNumber() + " :" + mEntry.getValue());
            }
        
        }
    }

    Java Map - darrell - DARRELL的博客

    class Car implements Comparable
    {
        private String name;
        private int number;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getNumber() {
            return number;
        }
        public void setNumber(int number) {
            this.number = number;
        }
        
        public Car(String name, int number) {
            this.name = name;
            this.number = number;
        }
        
        @Override
        public int compareTo(Object o) {
            if(!(o instanceof Car))
            {
                throw new ClassCastException("类型错误!");
            }
            Car c = (Car)o;
            int temp = this.getName().compareTo(c.getName());
            
            return temp == 0 ? this.getNumber() - c.getNumber() : temp;
        }
        
    }
    
    
    public class Person {
    
        public static void main(String[] args) {
    
               //对于TreeMap容器,只需要实现对象中的比较方法compareTo(),其内部是通过二叉树实现的,
               //当查找元素时,不会去调用hashCode()和equals(Object obj)方法。
            Map<Car, String> map = new TreeMap<Car, String>();
            
            map.put(new Car("aaa", 111), "abc");
            map.put(new Car("bbb", 222), "bcd");
            map.put(new Car("ccc", 333), "cde");
            map.put(new Car("aaa", 111), "qqq");
            map.put(new Car("bbb", 234), "bcd");
    
    
            Set<Map.Entry<Car, String>> mapEntries = map.entrySet();
            Iterator<Map.Entry<Car, String>> it = mapEntries.iterator();
            while(it.hasNext())
            {
                Map.Entry<Car, String> mEntry = it.next();
                System.out.println(mEntry.getKey().getName() + " : "  + mEntry.getKey().getNumber() + " :" + mEntry.getValue());
            }
            
            System.out.println(map.containsKey(new Car("aaa", 111)));
    
        }
    }

    Java Map - darrell - DARRELL的博客

     
  • 相关阅读:
    不重复随机数生成
    centos 输入密码正确进不去系统
    程序退出异常_DebugHeapDelete和std::numpunct
    iptables导致数据包过多时连接失败
    linux服务器并发与tcmalloc
    Windows server 2008 被ntlmssp安装攻击 解决
    转载 html div三列布局占满全屏(左右两列定宽或者百分比、中间自动适应,div在父div中居底)
    WIN2003使用IP安全策略只允许指定IP远程桌面连接
    如何让电脑公司Win7系统自动关闭停止响应的程序
    win7 64的系统安装。net4.0总是提示安装未成功
  • 原文地址:https://www.cnblogs.com/xiarongjin/p/8309740.html
Copyright © 2020-2023  润新知