简单实现java中的hashmap
2013-11-26 17:02
579 查看
package com.cym.collection; import java.util.LinkedList; public class MyHashMap { private int size; private Object [] table = new Object[999]; public void put(Object key,Object value){ if (key!=null) { int hash = key.hashCode()%table.length; hash = hash<0?-hash:hash; LinkedList list = null; Entry entry = null; if (table[hash]==null) { list = new LinkedList<>(); entry = new Entry(key, value); list.add(entry); }else{ list = (LinkedList)table[hash]; for (int i = 0; i < list.size(); i++) { entry = (Entry)list.get(i); if (entry.getKey().equals(key)) { entry.setValue(value); } } list.add(entry); } table[hash] = list; size++; } } public Object get(Object key){ if (key!=null) { int hash = key.hashCode()%table.length; hash = hash<0?-hash:hash; LinkedList list = null; if (table[hash]==null) { //Exception }else{ list = (LinkedList)table[hash]; for (int i = 0; i < list.size(); i++) { Entry entry = (Entry)list.get(i); if (entry.getKey().equals(key)) { return entry.getValue(); } } } } return null; } public int size(){ return size; } } class Entry{ Object key; Object value; public Entry(Object key, Object value) { super(); this.key = key; this.value = value; } public Object getKey() { return key; } public void setKey(Object key) { this.key = key; } public Object getValue() { return value; } public void setValue(Object value) { this.value = value; } }
相关文章推荐
- java自己实现的简单的hashMap
- java hashMap缓存简单实现
- HASHMAP缓存简单java实现
- java 散列与散列码探讨 ,简单HashMap实现散列映射表执行各种操作示列
- java——HashMap的实现原理,自己实现简单的HashMap
- java 散列与散列码探讨 ,简单HashMap实现散列映射表运行各种操作示列
- 简单分析Java的HashMap.entrySet()的实现
- java HashMap的简单实现
- 简单的java实现邮箱发送邮件
- 用JAVA实现一个简单地Http服务器
- Java实现的一个简单的下载器
- 【JAVA】简单实现一个阻塞任务队列
- Java语言实现简单FTP软件 FTP软件远程窗口实现(6)
- 探究简单递归Java代码实现
- 观察者模式java的简单实现
- Java中实现链式操作的简单例子
- 最简单的排序--桶排序java实现
- 单点登录原理和java实现简单的单点登录
- 每日一省之 ———— 一个简单的跳跃表(Skip List)的Java实现
- JAVA语言 实现简单的学生成绩管理系统(总分+平均分+排名)