Java

2011-10-19 1 views
7

Olası yinelenen rastgele beş haneli bir sayı üretmek için: Java


Java: generating random number in a range

Biraz yardıma ihtiyacım var.

5 basamak uzunluğunda rasgele bir sayı oluşturmak için 1 veya 2 ile başlayan kod ne kullanırdım? Şirket çalışanları kimliği olarak kullanmak için

.

Teşekkürler! Böyle bir sorun bir şey yaklaşım şekline bağlı

+0

SO ilk aramayı deneyin ... –

cevap

29

:

public int gen() { 
    Random r = new Random(System.currentTimeMillis()); 
    return 10000 + r.nextInt(20000); 
} 

Ya da böyle bir şey (muhtemelen yönteminin ait Rastgele nesnenin instantation istiyorum ama sadece basitlik için buraya koydum):

public int gen() { 
    Random r = new Random(System.currentTimeMillis()); 
    return ((1 + r.nextInt(2)) * 10000 + r.nextInt(10000)); 
} 

fikri 1 + nextInt (2) daima verecektir olmasıdır 1 veya 2. Daha sonra gereksinimi karşılamak ve daha sonra betwee bir numara eklemek için 10000 ile çarpın n [0..9999].

İşte

en bazı örnek çıktısı şunlardır:

14499 
12713 
14192 
13381 
14501 
24695 
18802 
25942 
21558 
26100 
29350 
23976 
29045 
16170 
23200 
23098 
20465 
23284 
16035 
18628 
+0

size cevap yardımcı tıklamaysa çok – Binyomin

+1

@Binyomin ederiz o yukarı ok büyük sıfırın üstünde. – david