package com.mylist;
public class myarraylist
/*** 返回list的大小
* * @return
*/public int size()
/*** 判斷是否為空
* * @return
*/public boolean isempty()
/*** 建立指定大小的list集合
* * @param init
*/public myarraylist(int init) catch (exception e)
} elementdata = new object[init];
} /**
* 判斷傳入下標是否越界
* * @param index
* @return
*/private boolean outof(int index) catch (exception e)
} return true;
} /**
* * 陣列擴容
* * @param in
*/private void addlist()
/*** 增加乙個元素
* * @param element
*/public void add(object element)
elementdata[size++] = element;// 先賦值,後自增
} /**
* 獲取指定位置的物件
* * @param index
* @return
*/public object get(int index)
return null;
}/**
* 刪除乙個指定位置的物件
* * @param args
*/public void remove(int index)
} /**
* 刪除某個物件
* * @param obj
*/public void remove(object obj)
}} }
/*** 修改某個位置的內容
* * @param i
* @param obj
* @return
*/public void set(int i, object obj)
} /**
* 獲取list的容量
* * @param list
* @return
*/public int getlength()
/*** 在指定位置增加乙個元素
*/public void add(int index, object obj)
}}
如有錯誤,歡迎指點 ArrayList實現自定義排序
arraylist中存在sort排序方法,只要你實現了comparator的介面,按照你自己的排序業務進行實現,你只要告訴這個介面按照什麼型別進行排序就ok了。這種方式類似於設計模式中的策略模式,把流程劃分好,具體的業務邏輯由使用者指定 實現 public class comparatortest ...
模仿原始碼自定義ArrayList
最近看了下arraylist的原始碼,抽空根據arraylist的底層結構寫了乙個功能簡單無泛型的自定義arraylsit,幫助自己更好理解arraylist 其實現的底層資料結構為數object組,如下 自己實現乙個arraylist public class myarraylist public...
自定義ArrayList 二 陣列擴容
接自定義陣列 一 在前面的基礎上加上了陣列擴容的修改,這種情況是在儲存的資料過大超過原先的陣列容量時,為了避免資料溢位,來進行的操作。public class setarrylist public setarrylist int capacity public void add e element ...