Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    229

    [JAVA] castind da Object a ArrayList

    Ciao a tutti.
    Non capisco perchè se effettuo un casting da Object a ArrayList mi viene visualizzato su Eclipse il seguente warning : "Type safety: The cast from Object to ArrayList<HashMap> is actually checking against the erased type ArrayList"
    Tra l'altro ho notato che in esecuzione non mi dà errori ma sembra cancellar il contenuto degli HashMap interni.
    qualcuno sa spiegarmi perchè?
    grazie.

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

    Re: [JAVA] castind da Object a ArrayList

    Originariamente inviato da Mailo
    Non capisco perchè se effettuo un casting da Object a ArrayList mi viene visualizzato su Eclipse il seguente warning : "Type safety: The cast from Object to ArrayList<HashMap> is actually checking against the erased type ArrayList"
    Tra l'altro ho notato che in esecuzione non mi dà errori ma sembra cancellar il contenuto degli HashMap interni.
    Sai cosa è la "erasure"? (se lavori con i generics dovresti saperlo ....). Il cast è "unchecked" perché il compilatore non può garantire/verificare che l'object sia un ArrayList<HashMap> piuttosto che un ArrayList<String> o ArrayList<QuelloCheVuoi>. A runtime l'oggetto è solamente un ArrayList e basta.

    Per risolvere la cosa ... beh, innanzitutto bisognerebbe vedere il contesto in cui è stato fatto questo cast (non dici granché e quindi nessuno può saperlo...). Se vuoi si può sopprimere il warning con l'annotazione @SuppressWarnings("unchecked").
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.