2014-12-11 6 views
-1

특정 길이의 임의의 단어를 생성하는 메서드를 작성하는 방법에 대해 다른 질문을하고 싶습니다. 메서드를 호출 할 때 메서드에서 생성되고 반환 될 단어의 길이를 선택합니다. JOptionPane를 입력으로 사용해야합니다. Main을 통해 메소드 작업을 표시해야합니다.자바에서 특정 길이의 무작위 단어 생성?

+0

사전은 영어 사전과 같은 사전 단어 또는 임의의 문자 집합이어야합니까? 지금까지 뭐 해봤 어? – mkobit

+0

특정 길이의 임의의 문자 집합이어야합니다. 사용자는 생성 될 단어의 길이를 선택해야합니다. –

+0

완전히 가능합니다. 대문자가 무작위로 쓰이기를 원한다면, [ASCII 테이블] (http://www.asciitable.com)에서 무작위로 임의의 숫자를 생성 한 다음 그 문자를'char' (65)로 캐스팅하면됩니다. ~ 90은 대문자 A ~ Z를 나타내며, 97 ~ 122는 소문자 a ~ z를 나타냄). 그렇지 않다면 글자 배열을 만들어 무작위로 선택해야합니다. –

답변

1

어떤 단어를 생성 하시겠습니까? 임의의 소문자?

String getRandomWord(int length) { 
    String r = ""; 
    for(int i = 0; i < length; i++) { 
     r += (char)(Math.random() * 26 + 97); 
    } 
    return r; 
} 
0

다음은 length 자의 소문자 문자열을 생성하는 간단한 방법입니다. 그 아이디어는 원하는 길이까지 ASCII table을 사용하여 임의로 문자를 추가하는 것입니다.

public static String randomWord(int length) { 
    Random random = new Random(); 
    StringBuilder word = new StringBuilder(length); 
    for (int i = 0; i < length; i++) { 
     word.append((char)('a' + random.nextInt(26))); 
    } 

    return word.toString(); 
} 
+0

하지만 사용자가 원하는 문자의 길이를 선택해야합니다. 메서드에서 생성되고 반환됩니다. 입력을 위해 JOptionPane을 사용해야한다. –

+0

@ StefanAritonović 이것은 임의의 단어를 생성하기 위해 호출 할 방법입니다. JOptionPane과 요구 사항이 무엇이든지간에 코드를 작성해야합니다. – mkobit