반응형
특정 메소드를 호출하면 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번 생성한경우에도 랜덤값이 잘 출력되는 것을 확인했습니다.
반응형
'JAVA' 카테고리의 다른 글
JAVA - 두 날짜의 차이 일자 구하기 (2) | 2020.05.11 |
---|---|
JAVA - 제네릭이란? (0) | 2020.04.29 |
JAVA - int형 데이터를 char로 변경하기(int To char) (0) | 2020.04.17 |
JAVA8 - Lamda 함수형 인터페이스 종류 (0) | 2020.03.24 |
JAVA - ActiveMQ 연결 예제 (2) | 2020.03.13 |