Kā tikt galā ar nejaušu skaitļu un virkņu ģeneratoru Java?



Šis raksts jūs iepazīstinās ar nejaušo skaitļu un virkņu ģeneratoru Java un sekos tam ar programmatisku demonstrāciju.

Šis raksts jūs iepazīstinās ar Nejaušs skaitlis Un String Generator Java un sekojiet tam ar programmatisku demonstrāciju. Šajā rakstā tiks apskatīti šādi norādījumi,

Ir trīs metodes nejaušu skaitļu ģenerēšanai Java, izmantojot iebūvētās metodes un klases.





  • Java.util.Random klase
  • Math.random metode
  • ThreadLocalRandom klase

Tāpēc ļaujiet mums sākt rakstu par nejaušo skaitļu un virkņu ģeneratoru Java,

Java .Noderīgi. Nejaušs

Pirmkārt, mums programmā jāizveido šīs klases eksemplārs un pēc tam jāizsauc dažādas iebūvētās metodes, piemēram, nextInt (), nextDouble () utt., Izmantojot mūsu izveidoto gadījumu.
Izmantojot šo klasi, var izveidot nejaušus skaitļu tipa skaitļus, pludiņus, dubultus, garus, būla skaitļus.
Argumentus var nodot metodēm, lai noteiktu augšējo robežu, līdz kurai skaitlis ir jāveido. Piemēram, nextInt (4) ģenerēs skaitļus diapazonā no 0 līdz 3 (abos ieskaitot).



1. piemērs:

// Java programma nejaušu skaitļu ģenerēšanas parādīšanai // izmantojot java.util.Random importēt java.util.Random publisko klasi Main {public static void main (String args []) {// Random klases gadījuma izveide Random rand = jauns Random () // Gadījuma veselu skaitļu ģenerēšana diapazonā no 0 līdz 99 int int1 = rand.nextInt (100) int int2 = rand.nextInt (100) // Nejaušo veselu skaitļu drukāšana System.out.println ('Nejaušie skaitļi:>' + int1) System.out.println ('Nejaušie skaitļi:>' + int2) // Nejaušo dubultu ģenerēšana dubultā dub1 = rand.nextDouble () double dub2 = rand.nextDouble () // Izlases dubultu drukāšana System.out.println (' Nejauši dubultspēles:> '+ dub1) System.out.println (' Nejaušie dubultspēles:> '+ dub2)}}

Izeja:

Rezultāts - nejaušs skaitlis un virkņu ģenerators java- Edureka



Piemērs:

fibonacci secība c ++
// Java programma, lai parādītu nejaušu skaitļu ģenerēšanu // izmantojot java.util.Random importēt java.util.Random publisko klasi Main {public static void main (String args []) {// Random klases gadījuma izveidošana Random rand = new Random () // Nejaušo veselu skaitļu ģenerēšana diapazonā no 0 līdz 9 int int1 = rand.nextInt (10) // Nejauša vesela skaitļa drukāšana System.out.println ('Random Integer:>' + int1)}}

Izeja:

Turpinot šo rakstu

Matemātika . nejaušs ( )

Klase, kas nosaukta par matemātiku, sastāv no dažādām metodēm dažādu skaitlisko darbību veikšanai, kas ietver logaritmus, eksponācijas risināšanu utt. Starp šīm operācijām ir nejaušība (), kuru izmanto, lai ģenerētu nejaušus divkāršu tipu skaitļus starp diapazonu no 0,0 līdz 1,0 . Šī metode atgriež dubultu vērtību, kas ir vai nu lielāka vai vienāda ar 0,0, un mazāka vai vienāda ar 1,0 kopā ar pozitīvu zīmi. Vērtības, kuras atgriež nejauši (), mašīna izvēlas nejauši.

1. piemērs:

// Java programma, lai parādītu // Math.random () darbību, lai ģenerētu nejaušus skaitļus importēt java.util. * Public class Main {public static void main (String args []) {// Datu veida nejaušas vērtības ģenerēšana dubultā System.out.println ('Nejauša vērtība:' + Math.random ()]}}

Izeja:

Lai pārbaudītu nejaušību, ļauj vēlreiz izpildīt programmu.

// Java programma, lai parādītu // Math.random () darbību, lai ģenerētu nejaušus skaitļus importēt java.util. * Public class Main {public static void main (String args []) {// Datu veida nejaušas vērtības ģenerēšana dubultā System.out.println ('Vēl viena nejauša vērtība:' + Math.random ())}}

Izeja:

Turpinot šo rakstu par nejaušo skaitļu un virkņu ģeneratoru java

Java.util.concurrent.ThreadLocalRandom klase

Šī klase tika ieviesta java 1.7, lai ģenerētu nejaušus skaitļus no datu tipa veseliem skaitļiem, dubultniekiem, Būla uc
1. piemērs:

// Java programma, lai parādītu ThreadLocalRandom darbību // nejaušu skaitļu ģenerēšanai. importēt java.util.concurrent.ThreadLocalRandom public class Main {public static void main (String args []) {// Gadījuma veselu skaitļu ģenerēšana diapazonā no 0 līdz 99 int int2 = ThreadLocalRandom.current (). nextInt () // Gadījuma vesela skaitļa drukāšana System.out.println ('Random Integers:' + int2) // Nejaušo dubulto dubultdublu ģenerēšana = ThreadLocalRandom.current (). NextDouble () double dub2 = ThreadLocalRandom.current (). NextDouble () // Gadījuma dubulto sistēmu drukāšana. out.println ('Random Doubles:' + dub1) System.out.println ('Random Doubles:' + dub2)}}

Izeja:

2. piemērs:

// Java programma, lai parādītu ThreadLocalRandom darbību // nejaušu skaitļu ģenerēšanai. importēt java.util.concurrent.ThreadLocalRandom publiskā klase Main {public static void main (String args []) {// Gadījuma booleanu ģenerēšana boolean bool1 = ThreadLocalRandom.current (). nextBoolean () boolean bool2 = ThreadLocalRandom.current (). nextBoolean () // Drukāt izlases Booleans System.out.println ('Random Booleans:' + bool1) System.out.println ('Random Booleans:' + bool2)}}

Izeja:

Turpinot šo rakstu par nejaušo skaitļu un virkņu ģeneratoru java

Nejaušas virknes ģenerēšana Java valodā

Mēs varam ģenerēt nejaušu burtciparu virkni, izmantojot šādas metodes:

Turpinot šo rakstu par nejaušo skaitļu un virkņu ģeneratoru java

Izmantojot matemātiku . nejaušs ( )

Zemāk ir sniegts piemērs, lai labāk izprastu jēdzienu.

// Java programma, kas ģenerē nejaušu AlphaNumeric String // izmantojot Math.random () metodi public class Main {// definē funkciju, lai ģenerētu nejaušu virkni, kuras garums n static String RequiredString (int n) {// izvēlējās nejaušu rakstzīmi no šīs virknes virknes AlphaNumericString = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + '0123456789' + 'abcdefghijklmnopqrstuvxyz' // izveidojiet StringBuffer lielumu AlphaNumericString StringBuilder s = new StringBuilder (n = y

Izeja:

Turpinot šo rakstu par nejaušo skaitļu un virkņu ģeneratoru java

kā konvertēt bināro virkni decimālā

Izmantojot CharSet

Mums šeit jāizmanto cita pakete, ti, java.nio.charset pakete.
Zemāk ir ilustrēts piemērs.

// Java programma ģenerē nejaušu AlphaNumeric virkni // izmantojot CharSet import java.util. * Import java.nio.charset. * Klase Main {static String RequiredString (int n) {// garuma deklarēšanas baits [] masīvs = jauns baits [256] new Random (). NextBytes (array) String randomString = new String (masīvs, Charset.forName ('UTF-8')) // StringBuffer StringBuffer izveide ra = new StringBuffer () // Pirmo 20 burtciparu rakstzīmju pievienošana for (int i = 0 i = 'a' && ch = 'A' && ch = '0' && ch 0)) {ra.append (ch) n--}} // atgriežot iegūto virkni atgriežot ra.toString ()} public static void main (String [] args) {// nejaušas burtciparu virknes lielums int n = 10 // Iegūstiet un parādiet burtciparu virkni System.out.println (RequiredString (n))}}

Izeja:

Turpinot šo rakstu par nejaušo skaitļu un virkņu ģeneratoru java

Regulāro izteiksmju izmantošana

Īstenošana notiek kā piemērs.

// Java programma ģenerē nejaušu alfa-ciparu virkni // izmantojot regulāro izteiksmju metodi importēt java.util. * Importēt java.nio.charset. * Klase Main {statiskā virkne getAlphaNumericString (int n) {// garuma deklarācijas baits [] masīvs = jauns baits [256] jauns nejaušs (). nextBytes (masīvs) virkne randomString = jauna virkne (masīvs, Charset.forName ('UTF-8')) // StringBuffer izveide StringBuffer ra = new StringBuffer () // noņemt visus atstarpes char String AlphaNumericString = randomString .replaceAll ('[^ A-Za-z0-9]', '') // Pievienojiet pirmās 20 burtciparu rakstzīmes // no ģenerētās nejaušās virknes rezultātam (int k = 0 k 0) || Character.isDigit (AlphaNumericString.charAt (k)) && (n> 0)) {ra.append (AlphaNumericString.charAt (k)) n--}} // atgriež iegūto virkni return ra.toString ()} public static void main (String [] args) {// nejaušas burtciparu virknes lielums int n = 15 // Iegūstiet un parādiet burtciparu virkni System.out.println (getAlphaNumericString (n))}}

Izeja:

Tādējādi mēs esam nonākuši pie šī raksta beigām. Ja vēlaties uzzināt vairāk, iepazīstieties ar Autors: uzticams tiešsaistes mācību uzņēmums Edureka. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts, lai apmācītu jūs gan galvenajiem, gan uzlabotajiem Java jēdzieniem kopā ar dažādiem Java ietvariem, piemēram, Hibernate & Spring.

Vai mums ir jautājums? Lūdzu, pieminējiet to šī emuāra komentāru sadaļā, un mēs sazināsimies ar jums pēc iespējas ātrāk.