Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    129

    [JAVA] Numero Casuale

    Salve a tutti.

    Sapete come si fa a generare un numero casuale di 18 cifre?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA] Numero Casuale

    Originariamente inviato da Mitttico
    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.
    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.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    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ù.

    codice:
    // Questo codice genera un BigInteger che rappresenta un valore compreso
    // fra 0 e (2 ^ 60) - 1
    BigInteger bi = new BigInteger(60, new Random());
    Oppure, altra strada meno raffinata, generare 2 numeri casuali di 9 cifre e concatenarne la rappresentazione stringa.


    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

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da LeleFT
    codice:
    BigInteger bi = new BigInteger(60, new Random());
    Già ... vero, anche BigInteger!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    129
    era la prima opzione da 0 a 999999999999999999...grazie mille!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.