public class MyMap {
private int size;//数组长度
SetObj[] arr = new SetObj[10];//设置SetObj的数组,最大数为10.
/**
* set
* @param args
*/
public void set(Object key,Object value) {
for(int i=0;i<size;i++) {
if(arr[i].getKey().equals(key)) {
arr[i].setValue(value);
return;
}
}
arr[size++]= new SetObj(key,value);
}
/**
* get
* @param args
*/
public Object get(Object key) {
for(int i=0;i<size;i++) {
if(arr[i].getKey()==key) {
return arr[i].getValue();
}
}
return null;
}
/**
* 是否包含key(value)
* @param args
*/
public boolean containsKey(Object key) {
for(int i=0;i<size;i++) {
if(arr[i].getKey()==key) {
return true;
}
}
return false;
}
public static void main(String[] args) {
MyMap map = new MyMap();
map.set("人", new Animal("狮子"));
map.set("人", new Animal("老虎"));
Animal a =(Animal)map.get("人");
System.out.println(a.getName());
}
}
class SetObj{
private Object key;
private Object value;
public SetObj(Object key,Object value) {
this.key = key;
this.value = value;
}
public Object getKey() {
return key;
}
public void setKey(Object key) {
this.key=key;
}
public void setValue(Object value) {
this.value = value;
}
public Object getValue() {
return value;
}
}
class Animal{
private String name;
public Animal(String name) {
this.name=name;
}
public String getName() {
return name;
}
}
文记:HashMap(键-值),通过一个对象调用另一个对象,实现创建一个A类,里面可以放两个对象,然后A类的对象放入数组中,再操作。