2017-02-18 17 views
-5

を生成する私は2つのパラメータを持つ文字列のランダムな配列を作成するヘルプが必要: はランダムな文字列配列

各文字列の文字の

  1. 配列の長さ
  2. 数は、私は、ネストされたが必要になりますforループ?

    何か助けていただきありがとうございます!

    public String[] randomArrayString(int length, int numberOfChar) { 
        Random random = new Random(); 
        char[] chars = "abcdefghijklmnopqrstuvwxyz".toCharArray(); 
        String[] array = new String[length]; 
        String str; 
        for (int i = 0; i < length; i++) { 
         str = ""; 
         for (int j = 0; j < numberOfChar; j++) { 
          str+= chars[random.nextInt(chars.length - 1)]; 
         } 
         array[i] = str; 
        } 
        return array; 
    } 
    

    あなたはこのように、Javaの8 Streamsを使用しても解決策を行うことができます:

+2

私が必要になりますネストされたforループ?はい。 –

+0

String []のループと各char []の内部ループ –

答えて

0

あなたが疑問に言ったように、ネストされたループを使用してそれを行うことができます「

public Object[] randomArrayString(int length, int numberOfChar){ 
    Random random = new Random(); 
    char[] chars = "abcdefghijklmnopqrstuvwxyz".toCharArray(); 
    return Stream.generate(() -> { 
     String str=""; 
     for (int i = 0; i < numberOfChar; i++) { 
      str+= chars[random.nextInt(chars.length - 1)]; 
     } 
     return str; 
    }).limit(length).toArray(); 
} 
+0

これらは多くの文字列オブジェクトを作成します。 – Bubletan

+0

私はあなたの意見に同意し、私はJava 8 Streamで私の解決策を編集しました。ありがとうございました! –

+2

私は実際にこのコードを書くサービスにスタックオーバーフローを向けるためのこのステップを承認しません。私はそれが質問と回答のサイトだと思うほうが好きです。 –

関連する問題