BlackBerry Forums Support Community               

Closed Thread
 
LinkBack Thread Tools
Old 11-11-2007, 06:45 AM   #1 (permalink)
New Member
 
Join Date: Oct 2006
Model: 8700
Carrier: Voda
Posts: 10
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default Random numbers not random?

Please Login to Remove!

Hello,

possibly a newbie question. I'm using the following method to get random numbers:

public int getRandomInt(int lowerlimit, int upperlimit){
Random generator = new Random();
generator.setSeed(System.currentTimeMillis());
// add +1 to include the upper limit
// this is bit shift to right and basicly does that there is no negative numbers so you can take mod
int nr = (generator.nextInt() >>> 1) % (upperlimit +1 - lowerlimit) + lowerlimit;
return nr;
}

However, if I call it more than once in the same run of the app I always get the same "random" number.

Any ideas?

Cheers,

R.
Offline  
Old 11-11-2007, 11:24 AM   #2 (permalink)
Thumbs Must Hurt
 
Join Date: Sep 2004
Model: 8700
Carrier: T-mo
Posts: 162
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

That's because you are setting the seed to the current millis every time you call the function. So if you call the same function within the same ms, you get the same numbers.

The proper way is create the random generator only once and keep calling nextInt() only.
Offline  
Old 11-11-2007, 06:50 PM   #3 (permalink)
Thumbs Must Hurt
 
Join Date: Jul 2007
Model: 8800
PIN: N/A
Carrier: TDC
Posts: 115
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by patrickh View Post
That's because you are setting the seed to the current millis every time you call the function. So if you call the same function within the same ms, you get the same numbers.

The proper way is create the random generator only once and keep calling nextInt() only.
i almost second that... only that your first random will always show the same number regardless of what amount of ms used... however, calling the nextInt will initiate a proper random number
Offline  
Closed Thread


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

50Pairs Colour Memory Foam Soft Ear Sleep Work Travel Earplugs Noise Reducer
$3.2
50Pairs Colour Memory Foam Soft Ear Sleep Work Travel Earplugs Noise Reducer pictureCute 5Pairs Colour Memory Ear Plugs Sleep Plane Earplugs Noise Reducer Hot
$0.76
Cute 5Pairs Colour Memory Ear Plugs Sleep Plane Earplugs Noise Reducer Hot picture1PCS North motherboard NORCO-740AE send CPU memory fan
$130.5
1PCS North   motherboard NORCO-740AE send CPU memory fan pictureCDI Torque 3504LDFN 3/4-Inch Drive Memory Needle Dual Scale Torque Wrench, Torqu
$493.32
CDI Torque 3504LDFN 3/4-Inch Drive Memory Needle Dual Scale Torque Wrench, Torqu picture1Pair Colour Memory Foam Soft Ear Plugs Sleep Work Earplugs Noise Reducer
$0.01
1Pair Colour Memory Foam Soft Ear Plugs Sleep Work Earplugs Noise Reducer picture






Copyright 2004-2016 BlackBerryForums.com.
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.