仿照ArrayList自己生成的MyList对象
2024-09-06 23:11:40
现在需要自己生成一个list集合,基本雷同ArrayList,不使用API的List接口。
实现如下:
MyList的代码:
public class MyList<T> { private T [] t; public MyList () {
Object obj[]=new Object[1];
t=(T[]) obj;
}
/**
* 添加集合对象
* @param info
*/
public void add(T info){
if(t[0]==null){
t[0]=info;
}else{
addLength(t);
t[t.length-1]=info;
} }
/**
* 返回集合长度
* @return int
* 2017年4月13日
*/
public int size(){
return this.t.length;
} /**
* 获取下标对应的对象
* @param i
* @return T
*/
public T getOfIndex(int i){ return t[i];
} /**
* 增长集合长度
* @param t
*/
private void addLength(T[] t){
Object [] ts1=new Object[t.length+1];
for(int i=0;i<t.length;i++){
ts1[i]=t[i];
}
this.t=(T[]) ts1;
}
}
测试类
public class TestMyList { public static void main(String[] args) {
MyList<String> list=new MyList<String>(); list.add("a");
list.add("b"); for(int i=0;i<list.size();i++){
System.out.println(list.getOfIndex(i));
}
}
}
输出结果:
a
b
这样一个简单的集合就完成了,现在只支持添加对象。
最新文章
- 『.NET Core CLI工具文档』(二).NET Core 工具遥测(应用信息收集)
- DOM hash
- 二、innerHTML应用测试
- [OpenCV] Samples 09: image
- Block的copy和循环引用的问题
- windows下使用TortoiseGit代替Git命令行操作
- Swift开发学习-02 变量和常量
- MySQL自带information_schema数据库使用
- A trip through the Graphics Pipeline 2011_04
- hdu 4759 Poker Shuffle 二进制
- pageControl指示器和图片放大-b
- POJ 2513 Colored Sticks 解题报告
- mysql学习笔记4---mysql 复制---源代码
- angularJS怎么实现与服务端的PHP进行数据交互
- javaWeb中request请求转发和response重定向
- HTML/CSS实现的一个列表页
- 一个JavaWeb搭建的开源Blog系统,整合SSM框架
- js 字符串操作
- 使用Promise解决多层异步调用的简单学习【转】
- Zabbix 3.2.6通过SNMP和iDRAC监控DELL服务器