Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [JAVA] precisione cifre decimali in un double

    salve,

    sono alle prese con delle operazioni in double.
    a un certo punto ottengo 0.8999999999999999 che, a occhio umano, è pari a 0.9, ma nel mio programma sarebbe vitale che passasse effettivamente a 0.9 (pena il cattivo funzionamento del programma medesimo).

    c'è un modo per ottenere 0.9 e non 0.8999999999999999?

    grazie mille. :)

  2. #2
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    se vuoi arrotondare alla prima cifra decimale un ipotetico "double d = x.xxxxxx" prova:
    codice:
    BigDecimal bigDecimal = new BigDecimal(d, new MathContext(1));
    d = bigDecimal.doubleValue();
    ora il tuo "double d" dovrebbe essere arrotondato alla prima cifra decimale...

  3. #3
    grazie.
    e se volessi convertire 0.812348983743987 in 0.81234 (ossia mantenendo 5 cifre decimali)?

    grazie ancora, nether. :)

  4. #4
    Utente di HTML.it L'avatar di nether
    Registrato dal
    Dec 2006
    Messaggi
    376
    codice:
    BigDecimal bigDecimal = new BigDecimal(d, new MathContext(5));
    d = bigDecimal.doubleValue();
    basta cambiare l'indicatore della precisione. buon lavoro.

  5. #5
    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.