java中map使用非系统类作为key
2014-01-24 00:00
295 查看
需要覆写equals和hashCode方法
import java.util.Map ; import java.util.HashMap ; class Person{ private String name ; private int age ; public Person(String name,int age){ this.name = name ; this.age = age ; } public String toString(){ return "姓名:" + this.name + ";年龄:" + this.age ; } public boolean equals(Object obj){ if(this==obj){ return true ; } if(!(obj instanceof Person)){ return false ; } Person p = (Person)obj ; if(this.name.equals(p.name)&&this.age==p.age){ return true ; }else{ return false ; } } public int hashCode(){ return this.name.hashCode() * this.age ; } }; public class HashMapDemo08{ public static void main(String args[]){ Map<Person,String> map = null ; map = new HashMap<Person,String>() ; map.put(new Person("张三",30),"zhangsan"); // 增加内容 System.out.println(map.get(new Person("张三",30))) ; } };
相关文章推荐
- java中map使用非系统类作为key
- Map使用非系统类作为key,要覆写equals和hashCode方法
- Java 在 Map 中使用复杂数据类型作为 Key
- JAVA使用了CLASS作Map的Key导致问题
- Java HashMap使用String,Long,Integer作为key的性能测试
- 从头认识java-15.7 Map(5)-介绍HashMap的工作原理-Key变了,能不能get出原来的value?(偶尔作为面试题)
- java Map使用Object 做为Key的问题
- map中使用自定义类指针作为key
- map中使用自定义类指针作为key
- 从头认识java-15.7 Map(5)-介绍HashMap的工作原理-Key变了,能不能get出原来的value?(偶尔作为面试题)
- java action中存Map 在jsp中使用struts2标签 通过map[key]取值
- groovy 使用变量值作为 map 的key--需要注意的
- Map中使用数组作为key的用法
- 【LibUIDK系列文章】使用字符串作为map的Key
- 使用用户自定义类型作为map的key
- 使用类/结构体作为boost::unordered_map中的key时需要实现hash_value函数
- 为实现非系统类作为Map的key需要覆写hashCode()和equals()方法
- 【JavaDemo】使用key遍历含自定义类的Map集合
- linux下C++ STL hash_map的使用以及使用char *型变量作为Key值的一大“坑”
- Java多线程并发编程,ConcurrentMap.putIfAbsent(key,value)的正确使用