Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726

    [JAVA] Converire da Object a int: impossibile?

    Ho la necessità di convertire il contenuto di un oggetto Object in un valore intero per poter effettuare dei calcoli, ma il compilatore quando vado a controllare il codice vede che provo a castare l'Object e da (giustamente) errore.

    Mi chiedevo allora se c'era una soluzione alternativa al cast per poter fare operazione matematiche con un Object.


    Grazie

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

    Re: [JAVA] Converire da Object a int: impossibile?

    Originariamente inviato da Downloader
    Ho la necessità di convertire il contenuto di un oggetto Object in un valore intero per poter effettuare dei calcoli, ma il compilatore quando vado a controllare il codice vede che provo a castare l'Object e da (giustamente) errore.

    Mi chiedevo allora se c'era una soluzione alternativa al cast per poter fare operazione matematiche con un Object.
    Tu hai una variabile di tipo reference a Object. Ma devi stabilire quale è il tipo dell'oggetto referenziato!

    Avere una variabile del tipo:

    Object unOggetto;
    ....

    dice molto poco ... a cosa fa riferimento? Un reference di tipo Object può fare riferimento a qualunque tipo di oggetto!

    unOggetto = new Integer (10);

    Allora unOggetto fa riferimento a un Integer. A questo punto cosa puoi fare? Testare che l'oggetto sia realmente un Integer e quindi ottenere un int;

    codice:
    if (unOggetto instanceof Integer)
        int val = (Integer) unOggetto;
    Nella seconda riga ho usato quello che si chiama "unboxing" (Java 5). Se non vuoi usare il unboxing dovresti fare:
    codice:
    int val = ((Integer) unOggetto).intValue ();
    Chiaro ora?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Ok, grazie.

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.