自己实现HashSet类和rrayList类
自己实现了HashSet类和ArrayList类,只是简单的实现了它们的几个方法,写出的类限制性很大。使用JDK提供的类的时候,应该要知道他们的底层的细节是怎么实现的,对以后使用和加什么理解有一定的帮助。JDK文档提供一个方法介绍,没有提供底层实现的细节,也没有具体每个方法实现的简单示例。
看代码:
自己写的HashSet类
public class MyArrayList {static int num = 0;static Object[] object;public MyArrayList(){ object = new Object[10];}public MyArrayList(int number){ object = new Object[number];}private void Add(Object E){object[num++] = E;}private static boolean MyContain(Object E){for(int i = 0; i < num; i++){if(object[i] == E)return true;}return false;}private static void ForEach(){for(int i = 0; i < num; i++){System.out.print(object[i] + " ");}System.out.println();}private Object ReMove(Object E){int i = 0;while(object[i] != E) i++;for(;i < num; i++){object[i] = object[i+1];}num = num -1;return object;}public static void main(String[] args) {//声明MyArrayList myArrayList = new MyArrayList();//Add方法for(int i = 1; i < 10; i++){myArrayList.Add(i);}//遍历方法System.out.println("myArrayList元素如下:");myArrayList.ForEach();//检查某个元素是否存在int checknum1 = 4;if(MyContain(checknum1) == true){System.out.println("myArrayList中存在元素"+checknum1);}else{System.out.println("myArrayList中不存在元素"+checknum1);}//移除一个元素1int checknum2 = 1;myArrayList.ReMove(checknum2);System.out.println("移除元素"+checknum2+"后:");myArrayList.ForEach();}}