自己做ArrayList容器 拿给大家分享
import java.util.*;
public class ArrayListTest {
private static StringBuffer sb = null;
/**
*
* @see 构造函数
*/
public ArrayListTest() {
sb = new StringBuffer();
}
/**
* @see 将指定的元素添加到此列表
* @param 要添加到此列表中的元素
* @return true || false
*/
public boolean add(Object o) {
if (o != null && !o.equals("")) {
sb.append(o + ", ");
return true;
} else {
sb.append("");
return false;
}
}
/**
*
* @return 返回此列表中的元素数
*/
public int size() {
Object s[] = arrays();
if (s != null)
return s.length;
return 0;
}
/**
*
* @param 要返回元素的索引
* @return 返回此列表中指定位置上的元素
* @throws j如果索引超出范围
* (index < 0 || index >= size())
*/
public Object get(int i) {
if (sb.length() < 1) {
throw new java.lang.IndexOutOfBoundsException("Index:" + 0 + ", "
+ "size:" + 0);
}
Object s[] = arrays();
return s[i];
}
private static Object[] arrays() {
Object s[] = null;
if (sb.length() != 0)
s = sb.toString().split(", ");
return s;
}
/**
*
* @return 按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组
*
*/
public Object[] toArrays() {
Object[] o = arrays();
Arrays.sort(o);
return o;
}
/**
*
* @param 要移除的元素的索引
* @see 移除此列表中指定位置上的元素
*/
public void resmove(int i) {
if (sb.length() != 0) {
Object[] s = arrays();
sb.delete(0, sb.length());
s[i] = "";
String str = "";
for (int x = 0; x < s.length; x++) {
str += s[x] + ", ";
}
sb.append(str.substring(2));
} else {
throw new java.lang.IndexOutOfBoundsException("Index:" + 0 + ", "
+ "size:" + 0);
}
}
/**
*
* @param 要替代的元素的索引
* @param 存储在指定位置上的元素
* @see 用指定的元素替代此列表中指定位置上的元素
*/
public void set(int i, Object o) {
if (sb.length() != 0) {
Object[] s = arrays();
if (s.length < i) {
sb.delete(0, sb.length());
s[i] = o;
String str = "";
for (int x = 0; x < s.length; x++) {
str += s[x] + ", ";
}
sb.append(str);
}
} else {
throw new java.lang.IndexOutOfBoundsException("Index:" + 0 + ", "
+ "size:" + 0);
}
}
/**
*
* @return 如果此列表中没有元素,则返回 true
*/
public boolean isEmpty() {
if (sb.length() != 0) {
return true;
}
return false;
}
public String toString() {
if (sb.length() > 2) {
return "[" + sb.substring(0, sb.length() - 2) + "]";
}
return "[" + sb.toString() + "]";
}
}