Salve a tutti.![]()
Sapete come si fa a generare un numero casuale di 18 cifre?
Salve a tutti.![]()
Sapete come si fa a generare un numero casuale di 18 cifre?
nextLong() di Random. Un long al suo valore massimo ha più di 18 cifre ... nessuno ti vieta di prendere solo una parte del valore.Originariamente inviato da Mitttico
Sapete come si fa a generare un numero casuale di 18 cifre?
Altrimenti generare 18 valori 0-9 da comporre insieme, ma questo presumo non sia la cosa migliore dal punto di vista della distribuzione/casualità, cioè non è la stessa cosa.
Per altri dettagli sui numeri casuali in Java: Generare numeri casuali sul mio blog.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Non ho ben capito se ti serve un numero casuale compreso fra 0 e 999999999999999999 oppure un numero casuale compreso fra 100000000000000000 e 999999999999999999.
Dipende poi anche da cosa ci vuoi fare con questo numero.
Supponendo di essere nel primo caso (un numero tra 0 e 999...), un metodo può essere quello di fare generare a Java un BigInteger casuale di 60 bit (sfruttando uno dei suoi costruttori) e poi, eventualmente, troncare le cifre in più.
Oppure, altra strada meno raffinata, generare 2 numeri casuali di 9 cifre e concatenarne la rappresentazione stringa.codice:// Questo codice genera un BigInteger che rappresenta un valore compreso // fra 0 e (2 ^ 60) - 1 BigInteger bi = new BigInteger(60, new Random());
Ciao.![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
Già ... vero, anche BigInteger!Originariamente inviato da LeleFT
codice:BigInteger bi = new BigInteger(60, new Random());
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
era la prima opzione da 0 a 999999999999999999...grazie mille!!