java中equal和hashCode方法
来源:互联网 发布:分享一些网络摄像头id 编辑:程序博客网 时间:2024/06/07 23:45
package test.kang;import java.util.HashMap;public class Test25 {public static void main(String[] args) {/*一般如果使用java中的Map对象进行存储时,他会自动调用hashCode方法来比较两个对象是否相等。 * 当Apples类不重写hashCode方法,输出dont have such a key * 重写hashCode方法后,输出对象的内存地址*/HashMap hm = new HashMap(); Apples appple=new Apples("青苹果",5);Apples appple2=new Apples("青苹果",5);hm.put(appple.getName(),appple); if(hm.containsValue(appple2))System.out.println(hm.get(appple2.getName())); else System.out.println("dont have such a key"); } }class Apples{private String name;private int num;public Apples(){}public Apples(String name,int a){this.name=name;this.num=num;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getNum() {return num;}public void setNum(int num) {this.num = num;}@Overridepublic int hashCode() {final int prime = 31;int result = 1;result = prime * result + ((name == null) ? 0 : name.hashCode());result = prime * result + num;return result;}@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;Apples other = (Apples) obj;if (name == null) {if (other.name != null)return false;} else if (!name.equals(other.name))return false;if (num != other.num)return false;return true;}}
阅读全文
0 0
- java中equal和hashCode方法
- jAVA hashCode() 和equal() 方法
- java中equal方法和hashCode的理解
- Java中hashCode()和equal()方法的使用
- Java中equal、hashCode等几个方法
- HashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- hashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- HashCode和equal方法
- java中hashcode和equal详解
- java中hashcode()和equal()方法的使用理解
- java hashcode和equal总结
- POJ The Balance —— 扩展欧几里得
- 批量下载喜马拉雅音频MP3的方法
- Android中的AlarmManager的使用
- c++程序设置2D Nav Goal的目标点
- 「信息安全产品」堡垒机
- java中equal和hashCode方法
- HDU1043 Eight 八数码问题
- PHP 升级到5.5后MySQL的代替法
- 机器学习实战:k-临近算法(一)
- WannaCry 勒索蠕虫病毒实现过程
- 《C语言及程序设计初步》_1.7分支结构程序体验_实践6——正差值(方法2)
- 轮播图做法
- SDUT 2017 春夏组队训练赛11 2017 6 10
- tensorflow学习笔记(六):TF.contrib.learn大杂烩