文档章节

java map的key为实体类时的问题

OsChina617
 OsChina617
发布于 2017/01/12 10:16
字数 149
阅读 93
收藏 0

java map的key为实体类时,需要重写Student类的hashCode和equals方法。这两个方法是集成自超类Object的。
HashMap默认是使用hashCode对比传入的key是否一致,如果hashCode一致会用equals进行对比,如果还是一致那么认为是同一个key。
你的Student类有age和name两个成员变量,可以根据这两个变量设定hashCode和equals方法。
public int hashCode(){
    return name.hashCode() + age;
 }
 public boolean equals(Object o){
     return (o instanceof Student) && 
                (age ==((Student)o).age) && 
                (name == null && ((Student)o).name == null || 
                    name.equals(((Student)o).name)
                );
 }

© 著作权归作者所有

OsChina617
粉丝 0
博文 15
码字总数 10241
作品 0
海淀
私信 提问
beetl 模板问题

@闲.大赋 你好,想跟你请教个问题: 我现在有两个实体类,两个实体类的属性名称,但类型不一样,在使用beetl时,使用同一个数据模板,程序根据数据传入不同的实体类,比如: 模板 data是个M...

鲁鲁
2015/05/18
1K
3
Go语言_通神路之灵胎篇(6)

1、映射 1.1 概念 go的映射在java中被叫做集合 type Vertex struct { } var m map[string]Vertex 上面是go的映射m,如果用java代替的话,Vertex就是实体类,这样用java8可以写成 Map m = ne...

木九天
2018/08/22
32
0
ThreadLocal 类 的源码解析以及使用原理

1、原理图说明      首先看这一张图,我们可以看出,每一个Thread类中都存在一个属性 ThreadLocalMap 成员,该成员是一个map数据结构,map中是一个Entry的数组,存在entry实体,该实体包...

小勇DW3
2018/08/13
0
0
Java Apache POI 操作 Excel 导出

版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82655653 Java Apache POI 操作 Excel 导出 Java 可以通过 Apache POI......

asing1elife
2018/09/12
0
0
探究ThreadLocal原理(基于Java8)

线程封闭 避免并发最简单的方法就是线程封闭。 即把对象封装到一个线程里,只有这一个线程能看到此对象。那么这个对象就算不是线程安全的也不会出现任何安全问题。 使用ThreadLocal是实现线程...

芥末无疆
2018/02/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

rime设置为默认简体

转载 https://github.com/ModerRAS/ModerRAS.github.io/blob/master/_posts/2018-11-07-rime%E8%AE%BE%E7%BD%AE%E4%B8%BA%E9%BB%98%E8%AE%A4%E7%AE%80%E4%BD%93.md 写在开始 我的Arch Linux上......

zhenruyan
今天
4
0
简述TCP的流量控制与拥塞控制

1. TCP流量控制 流量控制就是让发送方的发送速率不要太快,要让接收方来的及接收。 原理是通过确认报文中窗口字段来控制发送方的发送速率,发送方的发送窗口大小不能超过接收方给出窗口大小。...

鏡花水月
今天
8
0
OSChina 周日乱弹 —— 别问,问就是没空

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @tom_tdhzz :#今日歌曲推荐# 分享容祖儿/彭羚的单曲《心淡》: 《心淡》- 容祖儿/彭羚 手机党少年们想听歌,请使劲儿戳(这里) @wqp0010 :周...

小小编辑
今天
868
10
golang微服务框架go-micro 入门笔记2.1 micro工具之micro api

micro api micro 功能非常强大,本文将详细阐述micro api 命令行的功能 重要的事情说3次 本文全部代码https://idea.techidea8.com/open/idea.shtml?id=6 本文全部代码https://idea.techidea8....

非正式解决方案
今天
5
0
Spring Context 你真的懂了吗

今天介绍一下大家常见的一个单词 context 应该怎么去理解,正确的理解它有助于我们学习 spring 以及计算机系统中的其他知识。 1. context 是什么 我们经常在编程中见到 context 这个单词,当...

Java知其所以然
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部