<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    sunfruit[請訪問http://www.fruitres.cn]

    --我相信JAVA能走得更遠 QQ:316228067

    [原創]用JAVA寫的整形動態數組

        --sunfruit

        用java實現了整形數字的動態數組


    JDK版本
            1.3.1
        功能
            實現了添加整數到動態數組中,JDK(1.5以下)不提供整形類型的集合,比如ArrayList這樣的集合不允許添加整數,
            但是在編程過程中會遇到需要整形的動態數組的情況,所以這個類實現了這樣的功能
           
        歡迎大家提意見,交流
       
        代碼如下:
    /**
     * Title: 整形動態數組
     * Description: 實現了整形數字的動態添加
     * Copyright: Copyright (c) 2003
     * Company: LingTu
     * @author cuijiang
     * @version 2.0
     */
    public class DynArrayInt {
     /**
      * 原始數組
      */
     private int[] data_All;

     /**
      * 計數器(數組長度)
      */
     private int size_count;

     /**
      * 構造器,初始長度默認為10
      */
     public DynArrayInt() {
      this(10);
     }

     /**
      * 構造器,設置數組的初始長度
      *
      * @param iniSize  int 數組的初始長度
      */
     public DynArrayInt(int iniSize) {
      data_All = new int[iniSize];
     }

     /**
      * 添加數據,調用checkAdd(int i)
      * @param i   int 一個整形數字
      */
     public void addInt(int i) {
      //判斷是否增長
      this.checkAdd(size_count + 1);
      //賦值
      data_All[size_count++] = i;
      //添加時數組長度加一
     }

     /**
      * 添加數字,判斷是否增長
      * @param i   int 一個整形數字
      */
     private void checkAdd(int i) {
      //獲得原來的大小
      int star = data_All.length;
      //判斷是否增長
      if (i > star) {
       int starData[] = data_All;
       //設定增長大小
       int endall = star * 2;
       data_All = new int[endall];
       System.arraycopy(starData, 0, data_All, 0, size_count);
      }
     }

     /**
      * 獲取數據
      * @param i    int 索引號
      * @return int
      */
     public int getInt(int i) {

      if (i < 0 || i >= size_count) {
       throw new IndexOutOfBoundsException("超出最大或最小索引值,無法取得數據");
      } else {
       return data_All[i];
      }
     }

     /**
      * 獲取數據轉換成字符串模式
      * @param i  int 索引號
      * @return String
      */
     public String getIntToString(int i) {

      if (i < 0 || i >= size_count) {
       throw new IndexOutOfBoundsException("超出最大或最小索引值,無法取得數據");
      } else {
       return String.valueOf(data_All[i]);
      }
     }

     /**
      * 刪除數據
      * @param j int 一個要刪除的整數        
      */
     public void remove(int j) {
      for (int i = 0; i < size_count; i++) {
       if (data_All[i] == j) {
        System.arraycopy(data_All, i+1, data_All, i, size_count-i-1); // 復制數據
        --size_count;
        return;
       }
      }
     }

     /**
      * 刪除數據
      * @param j int 一個要刪除的索引        
      */
     public void removeIndex(int j) {
      if (j < 0 || j >= size_count) {
       throw new IndexOutOfBoundsException("超出最大或最小索引值,無法刪除數據");
      } else {
       System.arraycopy(data_All, j + 1, data_All, j, size_count -j- 1); // 復制數據
       --size_count;
       return;
      }
     }

     /**
      * 獲取大小
      * @return int 獲得數組長度
      */
     public int getSize() {
      return size_count;
     }

     /**
      * 獲取數組對象
      * @return int[] 獲得數組對象
      */
     public int[] getAllInt() {
      int[] starData = new int[size_count];
      System.arraycopy(data_All, 0, starData, 0, size_count);
      return starData;
     }

     /**
      * 獲得數組對象,String格式
      * @return String[] 獲得數組的對象
      */
     public String[] getAllIntToString() {
      int[] tempint = getAllInt();
      String[] starData = new String[tempint.length];
      for (int i = 0; i < starData.length; i++) {
       starData[i] = String.valueOf(tempint[i]);
      }
      return starData;
     }

     /**
      * 刪除全部內容
      */
     public void removeAll() {
      data_All = new int[10];
      size_count = 0;
     }
    }

    posted on 2006-02-19 17:33 sunfruit 閱讀(1418) 評論(0)  編輯  收藏 所屬分類: JAVA SE & EE

    主站蜘蛛池模板: 国产高清不卡免费视频| 久久久久亚洲精品天堂| 亚洲Aⅴ在线无码播放毛片一线天| 亚洲熟妇无码久久精品| a级毛片在线免费| 国产成人麻豆亚洲综合无码精品| 免费一级毛片在线播放视频免费观看永久 | 国内精品久久久久久久亚洲| 午夜不卡AV免费| 久久久久国产亚洲AV麻豆| 一级做性色a爰片久久毛片免费| 亚洲人成无码www久久久| 亚洲免费视频观看| 2021久久精品免费观看| 亚洲va精品中文字幕| 一二三四在线播放免费观看中文版视频 | 无码av免费毛片一区二区| 亚洲乱码一二三四区乱码| 中文在线免费视频| 亚洲国产精品无码专区| 亚洲AV无码片一区二区三区| 国产亚洲精品免费| 两个人看的www免费| 亚洲综合激情六月婷婷在线观看| 国产无人区码卡二卡三卡免费| 久久精品国产亚洲AV电影网| 在线看片v免费观看视频777| 亚洲国产精品无码久久98 | 人人揉揉香蕉大免费不卡| 亚洲国产精品成人综合色在线婷婷 | 成人午夜视频免费| 成人精品综合免费视频| 久久亚洲伊人中字综合精品| 91在线视频免费91| 黄色视屏在线免费播放| 亚洲日产2021三区| 亚洲精品国产日韩无码AV永久免费网 | 黄色网址免费在线| 久久亚洲精品中文字幕| 国产精品冒白浆免费视频| 精品在线免费观看|