티스토리 뷰

랜덤 문자열을 생성하고자 한다.

직접 구현해도 되지만 이미 구현되어있는 라이브러리를 쓰는게 편하다.


Apache Commons Lang 을 사용하면된다.

아래 링크로 들어가서 다운받거나

http://commons.apache.org/proper/commons-lang/download_lang.cgi


Maven으로 받으면된다

<groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version>



아래 코드를 실행해보자

System.out.println("Default [" + RandomStringUtils.random(10) + "]"); System.out.println("CustomChar [" + RandomStringUtils.random(10, new char[]{'A','B','C'}) + "]"); System.out.println("CustomString[" + RandomStringUtils.random(10, "ABC") + "]"); System.out.println("Alphabetic [" + RandomStringUtils.randomAlphabetic(10) + "]"); System.out.println("Alphanumeric[" + RandomStringUtils.randomAlphanumeric(10) + "]"); System.out.println("Ascii [" + RandomStringUtils.randomAscii(10) + "]"); System.out.println("Numeric [" + RandomStringUtils.randomNumeric(10) + "]");



결과

Default [쑴뢓卅Ⱝ✈쿥龧聃㝛傏] CustomChar [CBCCCCCBCC] CustomString[AACAABABBC] Alphabetic [eLCaHYWVMZ] Alphanumeric[gigNz3jynh] Ascii [MuPG-Y1?3y] Numeric [6677920351]


.random(int count) : 전체문자열에서 랜덤 (많이 느리다.. 다른건 0ms에 끝나는데 이건 10ms 정도 걸리니까 쓰지말자)

.random(int count, char[]) : 지정한 char배열에서 count만큼 랜덤으로 뽑는다.

.random(int coutn, String) : 지정한 문자열에서 count만큼 랜덤으로 뽑는다.

.randomAlphabetic(int count) : 알파벳에서 count만큼 랜덤으로 뽑는다.

.randomAlphanumeric(int count) : 알파벳과 숫자에서count만큼 랜덤으로 뽑는다.

.randomAscii(int count) : Ascii에서 count만큼 랜덤으로 뽑는다.

.randomNumeric(int count) : 숫자에서 count만큼 랜덤으로 뽑는다.



[작성자] devbible.tistory.com



댓글