V tomto príklade sa naučíme generovať náhodný reťazec a alfanumerický náhodný reťazec v Jave.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Java:
- Java String
- Java pre slučku
- Java String charAt ()
Príklad 1: Program Java na generovanie náhodného reťazca
import java.util.Random; class Main ( public static void main(String() args) ( // create a string of all characters String alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; // create random string builder StringBuilder sb = new StringBuilder(); // create an object of Random class Random random = new Random(); // specify length of random string int length = 7; for(int i = 0; i < length; i++) ( // generate random index number int index = random.nextInt(alphabet.length()); // get character specified by index // from the string char randomChar = alphabet.charAt(index); // append the character to string builder sb.append(randomChar); ) String randomString = sb.toString(); System.out.println("Random String is: " + randomString); ) )
Výkon
Náhodný reťazec je: IIYOBRK
Vo vyššie uvedenom príklade sme najskôr vytvorili reťazec obsahujúci všetky abecedy. Ďalej sme pomocou nextInt()
metódy Random
triedy vygenerovali náhodné číslo indexu .
Pomocou náhodného indexového čísla sme vygenerovali náhodný znak z reťazcovej abecedy. Potom sme pomocou StringBuilder
triedy spojili všetky postavy dohromady.
Ak chceme zmeniť náhodný reťazec na malé písmená, môžeme použiť toLowerCase()
metódu String
.
randomString.toLowerCase()
Poznámka : Výstup sa bude líšiť pri každom spustení programu.
Príklad 2: Program Java na generovanie náhodného alfanumerického reťazca
import java.util.Random; class Main ( public static void main(String() args) ( // create a string of uppercase and lowercase characters and numbers String upperAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; String lowerAlphabet = "abcdefghijklmnopqrstuvwxyz"; String numbers = "0123456789"; // combine all strings String alphaNumeric = upperAlphabet + lowerAlphabet + numbers; // create random string builder StringBuilder sb = new StringBuilder(); // create an object of Random class Random random = new Random(); // specify length of random string int length = 10; for(int i = 0; i < length; i++) ( // generate random index number int index = random.nextInt(alphaNumeric.length()); // get character specified by index // from the string char randomChar = alphaNumeric.charAt(index); // append the character to string builder sb.append(randomChar); ) String randomString = sb.toString(); System.out.println("Random String is: " + randomString); ) )
Výkon
Náhodný alfanumerický reťazec je: pxg1Uzz9Ju
Tu sme vytvorili reťazec, ktorý obsahuje čísla od 0 do 9 a abecedy malými a veľkými písmenami.
Z reťazca sme náhodne vygenerovali alfanumerický reťazec dĺžky 10 .