반응형

특정 메소드를 호출하면 return값으로 랜덤으로 생성된 문자열을 만드는 함수를 작성해보았습니다.

 

아스키코드값을 참조하여 작성하였으니, 수정하여 사용하실분들은 아스키코드표를 참조하시면 될 것 같습니다.

값은 0~9의 값과 A~Z까지의 26자리 대문자 문자열만 출력됩니다.

 

랜덤 문자열 생성기

public class RandomOut {

	public static void main(String[] args) {
		System.out.println(getRandomStr(1));
		System.out.println(getRandomStr(2));
		System.out.println(getRandomStr(3));
		System.out.println(getRandomStr(4));
		System.out.println(getRandomStr(5));
		System.out.println(getRandomStr(6));
	}

	public static String getRandomStr(int size) {
		if(size > 0) {
			char[] tmp = new char[size];
			for(int i=0; i<tmp.length; i++) {
				int div = (int) Math.floor( Math.random() * 2 );
				
				if(div == 0) { // 0이면 숫자로
					tmp[i] = (char) (Math.random() * 10 + '0') ;
				}else { //1이면 알파벳
					tmp[i] = (char) (Math.random() * 26 + 'A') ;
				}
			}
			return new String(tmp);
		}
		return "ERROR : Size is required."; 
	}
}

 

 

결과

랜덤 문자열 생성

원하는 자리수만큼 파라미터값으로 입력하시면 자릿수길이의 문자열이 출력됩니다.

 

 

6자리만 6번 생성한경우에도 랜덤값이 잘 출력되는 것을 확인했습니다.

반응형