Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    48

    Perlessità su array list

    Salve ragazzi..avrei una domanda banale..ma che mi tornenta..sul mio libro ho trovato questo codice http://pastebin.com/f79ce63ef con detto che le array list possono contenere solo integer e non int..in quanto create per contenere oggetti e di conseguenza è necessario convertire gli int in integer. Ho poi provato ad inserire degli int in una lista SENZA convertirli in integer..e con sorpresa il codice compila ed esegue correttamente..questo è l'esempio che ho fatto io http://pastebin.com/f270a66d7 in cui ho inserito direttamente degli int nella lista..e stampato esattamente come nel primo esempio..ora la domanda è..che senso ha fare un procedimento più lungo come quello descritto nel libro se le array list possono contenere anche int ??

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Probabilmente il libro che stai usando utilizza una versione della JDK più vecchia di quella che usi tu. Da quello che so, con Java 5 è stato introdotto l'autoboxing: in pratica se tu aggiungi ad una Collection (ArrayList, Vector, quel che ti pare) un tipo di dato primitivo, si arrangia lui a fare la conversione in oggetto per te.

    Stessa cosa per il passaggio contrario (unboxing).

    Cerca "Autoboxing" e "Unboxing" con google e troverai tutto il necessario.

    C'è da dire, comunque, che il codice che hai linkato non può non generare almeno dei warning con Java 5 (non avendo utilizzato correttamente i Generics). E non ho idea di cosa sia la classe "Lettore", pur immaginandola...

    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

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

    Re: Perlessità su array list

    Originariamente inviato da fiox
    se le array list possono contenere anche int ??
    Come ti ha già detto correttamente LeleFT, esiste l'autoboxing/unboxing da Java 5 che vale in generale. Dovunque sia richiesto un tipo primitivo (int, long ....) puoi usare il corrispondente "wrapper" (Integer, Long ....) e viceversa.
    Le collezioni contengono solo oggetti.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    48
    Ok capito cmq per quanto riguarda i warning vengono segnalati ma il programma funziona (era solo per esempio il codice ) grazie. Quindi facendo un esempio io posso scrivere
    ArrayList<Integer> lst = new ArrayList<Integer>();
    ed assegnare dei valori senza esplicitare la conversione da int ad integer grazie all'Autoboxing. E' corretto ?

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