容器第六课,自定义Map的功能,底层源码

来源:互联网 发布:网站美工设计培训 编辑:程序博客网 时间:2024/06/05 04:45
package com.pkushutong.Collection;/** * 自定义实现Map的功能 * Map:存放键值对,根据键对象找对应的值对象,键不能重复 */public class Test05 {SxtEntry[] arr = new SxtEntry[100];int size;public void put(Object Key, Object value){SxtEntry e = new SxtEntry(Key, value);for(int i=0; i<size; i++){if(arr[i].Key.equals(Key)){arr[i].value = value;return ;}}arr[size++] = e;}public Object get(Object Key){for (int i = 0; i < size; i++) {if(arr[i].Key.equals(Key)){return arr[i].value;}}return null;}public boolean containsKey(Object Key){for (int i = 0; i < size; i++) {if(arr[i].Key.equals(Key)){return true;}}return false;}public boolean containsValue(Object value){for (int i = 0; i < size; i++) {if(arr[i].value.equals(value)){return true;}}return false;}public static void main(String[] args) {Test05 map = new Test05();map.put("李四", new wife("花花"));map.put("李四", new wife("蕾蕾"));wife w = (wife) map.get("李四");System.out.println(w.name);}}class SxtEntry{Object Key;Object value;public SxtEntry(Object key, Object value) {super();Key = key;this.value = value;}}

0 0
原创粉丝点击