通过内部类实现存放数据
来源:互联网 发布:qq变声软件下载 编辑:程序博客网 时间:2024/06/07 07:53
import java.util.Arrays;public class EntryDemo{public static void main(String[] args){MyContainer container=new MyContainer();container.put("jack","陈豪");container.put("jay","周杰伦");container.put("rose","美国");container.put("john","小明");container.put("二傻","周xiao伦");container.entryArrays();}}class MyContainer{//存放entry对象的数组,默认大小为5private Entry[] entrys=new Entry[5];private int count=0;//xia标//对外提供一个接口想容器存放封装好的数据(Entry对象)public void put(String key,String value){Entry entry=new Entry();entry.setKey(key);entry.setValue(value);entrys[count++]=entry;//存放entry对象到数组中//数组的库容if(count>=entrys.length){//扩容后新数组的长度int newCapacity=entrys.length*2;//把老数组中数据复制到新的数组中去entrys=Arrays.copyOf(entrys,newCapacity);}}//把容器中的有数据的内容返回public void entryArrays(){entrys=Arrays.copyOfRange(entrys,0,count);for(int i=0;i<entrys.length;i++){System.out.println(entrys[i].getKey()+"--"+entrys[i].getValue());}}//把键值对封装在静态内部类中public static class Entry{private String key;private String value;public void setKey(String key){this.key=key;}public void setValue(String value){this.value=value;}public String getKey(){return key;}public String getValue(){return value;}}}
阅读全文