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

    [JAVA] BigDecimal, comparazione e operazioni tra numeri... input da tastiera con java

    Salve!!

    vorrei sapere come:

    - poter effettuare in java le operazioni di confronto tra oggetti numero e tra oggetti numero con numeri di tipo primitivo.
    - perchè con gli oggetti di tipo numerico non funzionano gli shorthand operator ( BigDecimal diviso int )
    - perchè con java 1.7 un programma mi dia errore sintattico l'underscore scritto tra le cifre
    -come prendere l'input da tastiera similarmente come scanf in C
    Grazie!!

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: [JAVA] BigDecimal, comparazione e operazioni tra numeri... input da tastiera con java

    Originariamente inviato da matteo martis
    vorrei sapere come:

    - poter effettuare in java le operazioni di confronto tra oggetti numero e tra oggetti numero con numeri di tipo primitivo.
    compare, equals? Da Java 1.5 inoltre puoi sfruttare l'autoboxing dei tipi.

    Originariamente inviato da matteo martis
    - perchè con gli oggetti di tipo numerico non funzionano gli shorthand operator ( BigDecimal diviso int )
    Perché in Java gli operatori non sono "overloadati" (che orrore di parola) come in C++.
    Usa il metodo divide()

    Originariamente inviato da matteo martis
    - perchè con java 1.7 un programma mi dia errore sintattico l'underscore scritto tra le cifre
    Cioè? Che hai scritto?

    Originariamente inviato da matteo martis
    -come prendere l'input da tastiera similarmente come scanf in C
    Dai un'occhiata alla classe Scanner.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    una sola nota:
    BigDecimal permette si di chiamare il metodo divide, ma in realtà come parametro ha almeno un BigDecimal (gli interi sono altre cose) e questo parametro rappresenta il divisore.

    Significa che

    Codice PHP:
    BigDecimal dividendo

    BigDecimal result dividendo.divide(new BigDecimal(intValue)); 
    non puoi fare direttamente una divisione BigDecimal /int.
    i confronti si fanno sempre tra bigdecimal (come ti ha detto Alex)
    a riguardo un'occhiata alle
    API la darei.

    poi mi dici che ci fa un underscore tra le cifre??
    RTFM Read That F*** Manual!!!

  4. #4
    Grazie per l'aiuto.

    dalla versione 1.7 java permette di utilizzare l'underscore per separare le cifre.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    sicuro che lo usi bene? perché da quanto ne so io puoi usare l'underscore come separatore tra lettere, ma l'intero numero deve iniziare e terminare per cifra, quindi



    codice:
    1_234_567_89
    va bene

    ma
    codice:
    _12345_678_
    no
    RTFM Read That F*** Manual!!!

  6. #6
    le regole le rispetto tutte perché uso l'underscore come se fosse il punto nelle calcolatrici

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    allora posta quello che scrivi e cosa dice il compilatore, non so che altro dirti
    RTFM Read That F*** Manual!!!

  8. #8
    Chiedo scusa, per l'underscore era un poblema di IDE ( non aggiornato alle novita di Java 1.7)... Un nuovo problema che ho riscontrato e chè quando inizializzo un bigdecimal con un valore 12.5( per esempio) mi parte un'eccezione, mentre se divido un intero il risultato decimale viene memorizzato tranquillamente.... come posso fare per inizializzare con un numero decimale?

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    613
    Originariamente inviato da matteo martis
    Chiedo scusa, per l'underscore era un poblema di IDE ( non aggiornato alle novita di Java 1.7)... Un nuovo problema che ho riscontrato e chè quando inizializzo un bigdecimal con un valore 12.5( per esempio) mi parte un'eccezione, mentre se divido un intero il risultato decimale viene memorizzato tranquillamente.... come posso fare per inizializzare con un numero decimale?
    Posta il codice e l'eccezione, quel che vuoi fare è possibilissimo.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.