现在需要自己生成一个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

这样一个简单的集合就完成了,现在只支持添加对象。

最新文章

  1. 『.NET Core CLI工具文档』(二).NET Core 工具遥测(应用信息收集)
  2. DOM hash
  3. 二、innerHTML应用测试
  4. [OpenCV] Samples 09: image
  5. Block的copy和循环引用的问题
  6. windows下使用TortoiseGit代替Git命令行操作
  7. Swift开发学习-02 变量和常量
  8. MySQL自带information_schema数据库使用
  9. A trip through the Graphics Pipeline 2011_04
  10. hdu 4759 Poker Shuffle 二进制
  11. pageControl指示器和图片放大-b
  12. POJ 2513 Colored Sticks 解题报告
  13. mysql学习笔记4---mysql 复制---源代码
  14. angularJS怎么实现与服务端的PHP进行数据交互
  15. javaWeb中request请求转发和response重定向
  16. HTML/CSS实现的一个列表页
  17. 一个JavaWeb搭建的开源Blog系统,整合SSM框架
  18. js 字符串操作
  19. 使用Promise解决多层异步调用的简单学习【转】
  20. Zabbix 3.2.6通过SNMP和iDRAC监控DELL服务器

热门文章

  1. JAVA常见算法题(十七)
  2. python2 to3
  3. Section Formula
  4. devops流程
  5. rpc接口mock平台
  6. Oracle ODBC无Oracle连接驱动
  7. CentOS6.8 安装FTP及添加用户
  8. Mysql 创建权限较小的用户(只对特定数据库有操作权限)
  9. 会话管理之session技术
  10. XCode5无法设置Deployment Target的解决办法