用数组实现集合的功能

 1 package day11_21_2016;
 2 
 3 import java.util.Arrays;
 4 
 5 public class shuzu {
 6     static int[] arr = new int[10];// 定义数组,并长度为10,没有初始化
 7     static int num = 0;
 8 
 9     public static void main(String[] args) {
10         System.out.println("TestArray.main()" + arr.length);
11         add(10);
12         add(20);
13         add(30);
14         System.out.println("TestArray.main()" + Arrays.toString(arr));
15     }
16 
17     /**
18      * 数组扩容(扩容策略:翻倍 ....)
19      * 
20      * @return 扩容后的数组
21      */
22     private static int[] doArr() {
23         int[] arr_ = new int[arr.length * 2];
24         for (int i = 0; i < arr.length; i++) {
25             arr_[i] = arr[i];
26         }
27         return arr_;
28     }
29 
30     /**
31      * 添加数据
32      * 
33      * @param ele
34      */
35     static void add(int ele) {
36         if (num >= arr.length) {
37             arr = doArr();
38         }
39         arr[num] = ele;
40         num++;
41     }
42 
43     /**
44      * 删除数据
45      * 
46      * @param n
47      */
48     static void remove(int n) {
49         for (int i = n; i < arr.length - 1; i++) {
50             arr[i] = arr[i + 1];
51         }
52     }
53 
54     /**
55      * 查询指定下标的数组元素
56      * 
57      * @param n
58      * @return
59      */
60     static int get(int n) {
61         return arr[n - 1];
62     }
63 
64     /**
65      * 设置指定下标的数组元素
66      * 
67      * @param n
68      * @param element
69      */
70     static void set(int n, int element) {
71         arr[n - 1] = element;
72     }
73 
74     /**
75      * 查询是否包含指定的元素
76      * 
77      * @param element
78      * @return
79      */
80     static boolean contains(int element) {
81         for (int i = 0; i < arr.length; i++) {
82             if (arr[i] == element) {
83                 return true;
84             }
85         }
86         return false;
87     }
88 }
源代码
package day11_21_2016;

import java.util.Arrays;

public class shuzu {
    static int[] arr = new int[10];// 定义数组,并长度为10,没有初始化
    static int num = 0;

    public static void main(String[] args) {
        System.out.println("TestArray.main()" + arr.length);
        add(10);
        add(20);
        add(30);
        System.out.println("TestArray.main()" + Arrays.toString(arr));
    }

    /**
     * 数组扩容(扩容策略:翻倍 ....)
     * 
     * @return 扩容后的数组
     */
    private static int[] doArr() {
        int[] arr_ = new int[arr.length * 2];
        for (int i = 0; i < arr.length; i++) {
            arr_[i] = arr[i];
        }
        return arr_;
    }

    /**
     * 添加数据
     * 
     * @param ele
     */
    static void add(int ele) {
        if (num >= arr.length) {
            arr = doArr();
        }
        arr[num] = ele;
        num++;
    }

    /**
     * 删除数据
     * 
     * @param n
     */
    static void remove(int n) {
        for (int i = n; i < arr.length - 1; i++) {
            arr[i] = arr[i + 1];
        }
    }

    /**
     * 查询指定下标的数组元素
     * 
     * @param n
     * @return
     */
    static int get(int n) {
        return arr[n - 1];
    }

    /**
     * 设置指定下标的数组元素
     * 
     * @param n
     * @param element
     */
    static void set(int n, int element) {
        arr[n - 1] = element;
    }

    /**
     * 查询是否包含指定的元素
     * 
     * @param element
     * @return
     */
    static boolean contains(int element) {
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == element) {
                return true;
            }
        }
        return false;
    }
}

 

posted @ 2016-11-21 10:17  奋斗的少年WH  阅读(426)  评论(0编辑  收藏  举报