2012-03-20 72 views
1

請我能問你,因爲我不記得可以:填充數據的隨機數據的列表

我想創建一個客戶的隨機字母和ID的

我有隨機數的隨機數據a String s = "ABCD..XYZ"; 如何將字母轉換爲數組(這是困難的部分),然後隨機選取元素並創建數據。謝謝。

+0

你可能想看看http://stackoverflow.com/a/2978841/1008310 – moodywoody 2012-03-20 13:06:34

+0

謝謝。謝謝。謝謝。 – 2012-03-20 13:08:24

回答

2

獲取信入陣非常簡單:

String s = "ABCD..XYZ"; 
    char[] characters = s.toCharArray(); 

從此隨便挑隨機字符:

int random = rand.nextInt(s.length()); 
    System.err.println(characters[random]); 
+0

好的,謝謝,這是我一直在尋找的.toCharArray方法 – 2012-03-20 13:21:32

0

如果你只是想從你的字符串選擇一個隨機字符,做一些事情像這樣:

String s = "ABCDEFG...Z"; 
Random r = new Random(System.currentTimeMillis()); 

s.charAt(r.nextInt(s.length())); // THIS WILL GET A RANDOM CHAR FROM YOUR STRING 

如果您需要創建隨機名或其他東西,只需迭代這幾次將這些字符添加到您的字符串中以創建您的隨機名稱。

+0

謝謝,我需要將它們添加到數組中。我想,我的觀點是要得到一個有一些屬性的客戶列表,以便爲我執行一些任務。謝謝! – 2012-03-20 13:23:47

0

這將創建一個隨機的10個字母的單詞:

public static void main(String[] args) { 
    char[] letters = new char[10]; 
    for (int i = 0; i < 10; i++) { 
     letters[i] = (char) ('A' + new Random().nextInt(26)); 
    } 
    String s = String.copyValueOf(letters); 
    System.out.println(s); 
} 
+0

同樣好,謝謝你那個:-) – 2012-03-20 13:19:29

0

使用StringBuilder + Random.nextInt()。

StringBuilder builder = new StringBuilder(); 
Random random = new Random(); 
for (int i = 0; i < 10; i++) { 
    builder.append((char) ('A' + random.nextInt(26))); 
} 
System.out.println(builder.toString()); 
+0

謝謝亞當,密碼使用是一種很好的做法嗎? – 2012-03-20 13:16:37

+0

可以,但我會使用大寫/小寫,數字和多餘字符的混合。 – Adam 2012-03-20 13:30:18

0

(這是一個答案,我只是給別人的重複,但認爲它可能適合這裏)

Stelyian,

我有一個非常簡單的類,可以用「半幫助隨機「數據。它非常易於使用,並且會爲您的數據提供不同類型的字符串。

也許它會有所幫助。這裏的其他答案會給你真正的模糊數據,如果這是你正在尋找。祝你好運!

PhraseGenerator

http://metal-sole.com/2012/10/12/random-phrases-computers-is-funny/