9 Star 23 Fork 2

tzhanggit/JavaProgramming

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Name.java 1.21 KB
一键复制 编辑 原始数据 按行查看 历史
TZhangOffice 提交于 2020-06-06 16:20 +08:00 . 2020春代码更新完毕
package ch5;
/**
* 注意:排序需要实现Comparable接口,并重写compareTo方法
* 元素相同需要重写equals方法
* 若存储在hash*(如HashSet、HashTable、HashMap等)的容器中,则元素相同还需要重写hashcode方法
*
*/
public class Name /*implements Comparable*/ {
private String firstName, lastName;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public Name(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
public String toString() {
return firstName +"." + lastName;
}
@Override
public boolean equals(Object obj) {
if(obj instanceof Name) {
Name n = (Name)obj;
if(firstName.equals(n.firstName) && lastName.equals(n.lastName))
return true;
}
return super.equals(obj);
}
@Override
public int hashCode() {
return firstName.hashCode();
}
/*
@Override
public int compareTo(Object obj) {
Name n = (Name) obj;
int lastCmp = lastName.compareTo(n.lastName);
return lastCmp != 0 ? lastCmp: firstName.compareTo(n.firstName);
}
*/
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/tzhanggit/JavaProgramming.git
git@gitee.com:tzhanggit/JavaProgramming.git
tzhanggit
JavaProgramming
JavaProgramming
master

搜索帮助