共享關于List的幾個常用方法

          Posted on 2010-04-27 15:08 java小爬蟲 閱讀(3816) 評論(0)  編輯  收藏

          // 把一個List平均分成二個List
           public static List[] splitList(List list) {
            ArrayList left = new ArrayList();
            ArrayList right = new ArrayList();
            ArrayList[] result = new ArrayList[2];
            if (null == list || list.size() == 0)
             return result;
            for (int i = 0; i < list.size(); i++) {
             if (i % 2 == 0) {
              left.add(list.get(i));
             }
             else {
              right.add(list.get(i));
             }
            }
            result[0] = left;
            result[1] = right;
            return result;
           }



           // 把一個List按照size的大小分組;
           public static List splitListByParameter(List list, int size) {
            if (null == list || list.size() == 0 || size == 0)
             return null;
            int arraySize = 0;
            if (list.size() % size == 0)
             arraySize = list.size() / size;
            else
             arraySize = list.size() / size + 1;

            List result = new ArrayList(arraySize);
            int temp = 0;
            while (temp < arraySize) {
             try {
              if (temp == arraySize - 1)
               result.add(list.subList(temp * size, list.size()));
              else
               result.add(list.subList(temp * size, temp * size + size));
             }
             catch (RuntimeException e) {
              e.printStackTrace();
             }
             temp++;
            }
            return result;
           }




          /**
            * 從一個LIST中隨機獲取size條記錄,返回值LIST;
            *
            */
           public static List getRandomRecords(List list , int size) {
            if(list==null||list.size()<=size) return list ;
            List result = new ArrayList();
            Random random = new Random();
            while(result.size()<size){
            Object obj = list.get(random.nextInt(list.size()));
            if(!result.contains(obj)){
            result.add(obj);
            }
            }
            return result ;
           }

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 渭源县| 资阳市| 静海县| 潍坊市| 罗山县| 海淀区| 茶陵县| 吉安市| 民县| 阆中市| 石河子市| 金华市| 凤台县| 五河县| 灌云县| 论坛| 嘉义市| 工布江达县| 图木舒克市| 临邑县| 诸暨市| 伊吾县| 潮州市| 临西县| 平罗县| 威远县| 盘山县| 加查县| 唐山市| 泰和县| 慈利县| 高邑县| 山阴县| 平邑县| 盐亭县| 察隅县| 墨玉县| 宾川县| 伊金霍洛旗| 固镇县| 东海县|