I\'m trying to create an android application which will generate random series of values (integer numbers in this case) in a given range (but NOT equal betw
final StringBuilder builder = new StringBuilder();
final Random r = new Random(System.currentTimeMillis());
final Set numbers = new HashSet();
public String getRandomNumbers(int count,int min, int max)
{
if(count > (max - min) || (max < min))
throw new IllegalArgumentException("There is an error with the parameters provided");
builder.setLength(0); //Clear StringBuilder
numbers.clear(); //Clear the number list
int i=0;
while( i < count )
{
int aRandomNumber = (r.nextInt() % max) +min;
if(numbers.contains(aRandomNumber)) // If we have seen this number already
continue;
else
{
i++;
numbers.add(aRandomNumber);
builder.append(aRandomNumber); //Add number to string
if( i < (count-1) )
builder.append(", "); // Add a comma if it's not the last number
}
}
String output = builder.toString();
builder.setLength(0); //A polite clearing
numbers.clear();
return output;
}