JAVA 7 introduced new package java.util.Random for handle random numbers. previously we used Math.random() to get random numbers.
In below example generating selected random numbers of certain integers range with out duplicate. Here range belongs to Min=0 , Max=25 and need non duplicate numbers 8.
Pre-Requisite
- JAVA 7/JAVA 8
Sample Code
package random; import java.util.ArrayList; import java.util.Random; public class SelectedRandomNumberBetweenRangeNoDuplicate { public static void main(String[] args) { //Select Eight random number without duplicate between 0 and 50 ArrayList list = getRandomNonRepeatingIntegers(8, 0, 25); for (int i = 0; i < list.size(); i++) { System.out.println("" + list.get(i)); } } //Get selected size number without duplicate public static ArrayList getRandomNonRepeatingIntegers(int size, int min, int max) { ArrayList numbers = new ArrayList(); Random random = new Random(); while (numbers.size() < size) { //Get Random numbers between range int randomNumber = random.nextInt((max - min) + 1) + min; //Check for duplicate values if (!numbers.contains(randomNumber)) { numbers.add(randomNumber); } } return numbers; } }
Output
4
19
20
22
17
13
8
16
Summary
I above code explain about How to generate random numbers and avoid duplicate of numbers between certain range.
You must log in to post a comment.