Here you can find the source of randomSubList(List
Parameter | Description |
---|---|
list | a parameter |
sizeOfSubList | a parameter |
public static <E> void randomSubList(List<E> list, int sizeOfSubList)
//package com.java2s; /*/*w ww. jav a2 s.c om*/ * Copyright (C) 2009 - 2012 SMVP4G.COM * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 3 of * the License, or (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this software; if not, write to the Free * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ import java.util.*; public class Main { /** * Using like subList() but it take randoms elements. * * @param list * @param sizeOfSubList */ public static <E> void randomSubList(List<E> list, int sizeOfSubList) { List<E> subList = Collections.emptyList(); if (isNotEmpty(list) && list.size() > sizeOfSubList) { subList = new ArrayList<E>(sizeOfSubList); Random generator = new Random(); for (int i = 0; i < sizeOfSubList; i++) { int random = generator.nextInt(list.size()); subList.add(list.get(random)); list.remove(random); } } list.clear(); list.addAll(subList); } /** * Using like isEmpty but it check a collection is not empty or not. * * @param collection * @return false if this collection is null or empty. */ public static boolean isNotEmpty(Collection<?> collection) { return !isEmpty(collection); } /** * Check a collection is empty or not. * * @param collection * @return true if this collection is null or empty. */ public static boolean isEmpty(Collection<?> collection) { return collection == null || collection.isEmpty(); } }