吴裕雄--天生自然java开发常用类库学习笔记:IdentityHashMap类
- import java.util.IdentityHashMap ;
- import java.util.HashMap ;
- import java.util.Set ;
- import java.util.Iterator ;
- import java.util.Map ;
- class Person{
- private String name ;
- private int age ;
- public Person(String name,int age){
- this.name = name ;
- this.age = 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 String toString(){
- return "姓名:" + this.name + ",年龄:" + this.age ;
- }
- };
- public class IdentityHashMapDemo01{
- public static void main(String args[]){
- Map<Person,String> map = null ; // 声明Map对象
- map = new HashMap<Person,String>() ;
- map.put(new Person("张三",30),"zhangsan_1") ; // 加入内容
- map.put(new Person("张三",30),"zhangsan_2") ; // 加入内容
- map.put(new Person("李四",31),"lisi") ; // 加入内容
- Set<Map.Entry<Person,String>> allSet = null ; // 准备使用Set接收全部内容
- allSet = map.entrySet() ;
- Iterator<Map.Entry<Person,String>> iter = null ;
- iter = allSet.iterator() ;
- while(iter.hasNext()){
- Map.Entry<Person,String> me = iter.next() ;
- System.out.println(me.getKey() + " --> " + me.getValue()) ;
- }
- }
- };
- import java.util.IdentityHashMap ;
- import java.util.Set ;
- import java.util.Iterator ;
- import java.util.Map ;
- class Person{
- private String name ;
- private int age ;
- public Person(String name,int age){
- this.name = name ;
- this.age = 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 String toString(){
- return "姓名:" + this.name + ",年龄:" + this.age ;
- }
- };
- public class IdentityHashMapDemo02{
- public static void main(String args[]){
- Map<Person,String> map = null ; // 声明Map对象
- map = new IdentityHashMap<Person,String>() ;
- map.put(new Person("张三",30),"zhangsan_1") ; // 加入内容
- map.put(new Person("张三",30),"zhangsan_2") ; // 加入内容
- map.put(new Person("李四",31),"lisi") ; // 加入内容
- Set<Map.Entry<Person,String>> allSet = null ; // 准备使用Set接收全部内容
- allSet = map.entrySet() ;
- Iterator<Map.Entry<Person,String>> iter = null ;
- iter = allSet.iterator() ;
- while(iter.hasNext()){
- Map.Entry<Person,String> me = iter.next() ;
- System.out.println(me.getKey() + " --> " + me.getValue()) ;
- }
- }
- };
吴裕雄--天生自然java开发常用类库学习笔记:IdentityHashMap类的更多相关文章
- 吴裕雄--天生自然java开发常用类库学习笔记:定时调度
// 完成具体的任务操作 import java.util.TimerTask ; import java.util.Date ; import java.text.SimpleDateFormat ...
- 吴裕雄--天生自然java开发常用类库学习笔记:正则表达式
public class RegexDemo01{ public static void main(String args[]){ String str = "1234567890" ...
- 吴裕雄--天生自然java开发常用类库学习笔记:观察者设计模式
import java.util.* ; class House extends Observable{ // 表示房子可以被观察 private float price ;// 价钱 public ...
- 吴裕雄--天生自然java开发常用类库学习笔记:比较器
class Student implements Comparable<Student> { // 指定类型为Student private String name ; private i ...
- 吴裕雄--天生自然java开发常用类库学习笔记:Arrays
import java.util.* ; public class ArraysDemo{ public static void main(String arg[]){ int temp[] = {3 ...
- 吴裕雄--天生自然java开发常用类库学习笔记:大数操作
import java.math.* ; class MyMath{ public static double add(double d1,double d2){ // 进行加法计算 BigDecim ...
- 吴裕雄--天生自然java开发常用类库学习笔记:NumberFormat
import java.text.* ; public class NumberFormatDemo01{ public static void main(String args[]){ Number ...
- 吴裕雄--天生自然java开发常用类库学习笔记:Math与Random类
public class MathDemo01{ public static void main(String args[]){ // Math类中的方法都是静态方法,直接使用“类.方法名称()”的形 ...
- 吴裕雄--天生自然java开发常用类库学习笔记:取得当前日期
import java.util.* ; // 导入需要的工具包 class DateTime{ // 以后直接通过此类就可以取得日期时间 private Calendar calendar = nu ...
- 吴裕雄--天生自然java开发常用类库学习笔记:日期操作类DataFormat、SimpleDataFormat
import java.text.DateFormat ; import java.util.Date ; public class DateDemo03{ public static void ma ...
随机推荐
- CSS概述(最详细!!!)
一.先综述 二.分述: 1.简介: 2.基本用法 3.引入方式: 4.盒模型 5.选择器: 6.常见文本样式及复合样式 7.改变行.块元素的属性: 8.标签显示与隐藏: ...
- 快速幂 & 矩阵快速幂
目录 快速幂 实数快速幂 矩阵快速幂 快速幂 实数快速幂 普通求幂的方法为 O(n) .在一些要求比较严格的题目上很有可能会超时.所以下面来介绍一下快速幂. 快速幂的思想其实是将数分解,即a^b可以分 ...
- [USACO 08MAR]土地购买
Description 题库链接 给你 \(n\) 块不同大小的土地.你可分批购买这些土地,每一批价格为这一批中最大的长乘最大的宽.问你买下所有土地的花费最小为多少. \(1\leq n\leq 50 ...
- spark aggregateByKey 时 java.lang.OutOfMemoryError: GC overhead limit exceeded
最后发现有一个用户单日访问我们网站次数为 4千万,直接导致 aggregate 时内存不够.过滤掉该用户即可.
- spring boot中扩展spring mvc 源码分析
首先,确认你是对spring boot的自动配置相关机制是有了解的,如果不了解请看我spring boot相关的源码分析. 通常的使用方法是继承自org.springframework.boot.au ...
- SQL注入之SQLmap
注意:sqlmap只是用来检测和利用sql注入点的,并不能扫描出网站有哪些漏洞,使用前请先使用扫描工具扫出sql注入点. 1.
- redis队列与RabbitMQ队列区别
消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递.消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消 ...
- ADV-297 快速排序 java
问题描述 用递归来实现快速排序(quick sort)算法.快速排序算法的基本思路是:假设要对一个数组a进行排序,且a[0] = x.首先对数组中的元素进行调整,使x放在正确的位置上.同时,所有比x小 ...
- 02-01 Android学习进度报告一
前两天,刚刚安装好有关Android开发有关的软件并配好了环境,有一些体会想要发表. 首先我了解到有一款专门用于Android开发的软件,叫做Android Studio ,是一个IDE集成软件 于是 ...
- 一个前端博主的nginx+php+mysql的环境搭建
这几天天某的公司给了在下一个需求,让我修改一个后端大佬用PHP写的一个官网,虽然说修改的内容还是很简单,但是毕竟之前还是没接触过PHP,于是开始了漫长的爬坑之旅,话不多说,这次就给大家介绍一下我配置安 ...