Pagina 2 di 5 primaprima 1 2 3 4 ... ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 44
  1. #11
    Utente di HTML.it L'avatar di Kneos
    Registrato dal
    Aug 2002
    Messaggi
    128
    Ok grazie mi leggero esempio di arrayList che immagino vada usato ad ogni ciclo del while sulla riga corrente come ora usavo l'append di Stringbuffer (dichiarandolo fuori ovviamente). Mi pare una soluzione fattibile per come me l'hai prospettata.
    cacchio questo è solo il promo passo, il resto sarà peggio. Prossimo step creare dinamicamente dei bottoni sull'interfaccia in base ad uno dei campi (colonna) dell'array appena creato mioarray[i][1] e metterli in posti diversi dell'intefaccia a seconda del campo corrispondente array[i][0]. vabè vedremo, grazie molte!!

    certo che con php e js che conosco bene è tutto molto piu semplice, con 4 righe fai tutto (il problema dell'array da file di testo è stupidata in entrambi) ma capisco che hanno scopi e utilizzi diversi rispetto a java.

  2. #12
    Utente di HTML.it L'avatar di Kneos
    Registrato dal
    Aug 2002
    Messaggi
    128
    Gentile andbin, spero tu legga ancora il mio post. ho provato a leggermi cose su arrayList ma ancora non riesco a capire come raggiungere il mio scopo e cioe poter utilizzare un dato in questo modo mioarray[0][0] che contiene primo elemento della prima riga del mio file di testo con separatori. ti incollo il codice per come è ora e ti chiedo cortesemente di completarlo per farmi capire come ottenere cio che cerco.

    codice:
    try {
                BufferedReader input = new BufferedReader(new FileReader("menu.txt"));
                ArrayList<String[]> mioarray = new ArrayList<String[]> ();
                    String text;
                    while ((text = input.readLine()) != null)
                        mioarray.add(text.split(";"));
                    input.close(); 
                    System.out.println(/* qui vorrei in output il mio dato prima riga prima colonna */);
           } catch (IOException ioException) {
           }
    cosa manca? grazie mille!!!

  3. #13
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Kneos
    cosa manca? grazie mille!!!
    La lettura della documentazione...
    http://docs.oracle.com/javase/6/docs...ArrayList.html

    Scopriresti così che per recuperare l'i-esimo elemento c'è il metodo get()
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #14
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Kneos
    poter utilizzare un dato in questo modo mioarray[0][0] che contiene primo elemento della prima riga del mio file di testo con separatori.
    Alla fine di tutto il ciclo di readLine/split/add, come avevo già detto in precedenza, puoi ottenere praticamente senza (quasi) sforzo e a-gratis l'array bidimensionale come String[][].

    Basta che invochi il toArray(T[] a) sul tuo ArrayList (attenzione! non l'altro toArray che è senza argomenti e restituisce Object[])
    Basta che a questo toArray passi un nuovo array bidimensionale di lunghezza 0 e senza sub-array (quando si istanzia un array multi-dimensionale, solo la prima dimensione è obbligatoria). Ci pensa toArray a istanziare/preparare tutto.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #15
    Utente di HTML.it L'avatar di Kneos
    Registrato dal
    Aug 2002
    Messaggi
    128
    Non ho modo di testarlo ora, sono fuori casa, ma se ho capito bene qualcosa del genere

    codice:
    try {
                BufferedReader input = new BufferedReader(new FileReader("menu.txt"));
                ArrayList<String[]> mioarray = new ArrayList<String[]> ();
                String[] mappa = new String[0] ; 
                String text;
                    while ((text = input.readLine()) != null)
                        mioarray.add(text.split(";"));
                        mioarray.toArray(mappa);
                    input.close(); 
                    System.out.println(mappa[0][0]);
           } catch (IOException ioException) {
           }
    dovrebbe stamparmi in output l'elemento [0][0] ????

    grazie ancora andbin

  6. #16
    Utente di HTML.it L'avatar di Kneos
    Registrato dal
    Aug 2002
    Messaggi
    128
    Provato poco fa, mi da errore runtime alla linea del println: "array required but string found"

  7. #17
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Kneos
    String[] mappa = new String[0] ;
    mioarray.toArray(mappa);
    No, per 2 motivi:
    a) hai istanziato e passato un array a una dimensione, devi istanziare un array bidimensionale di lunghezza 0 (ricorda quanto ho detto prima).
    b) toArray restituisce l'array bidimensionale istanziato e/o popolato (se ne hai passato uno di lunghezza 0, ovviamente ne istanzia uno sufficiente il toArray).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #18
    Utente di HTML.it L'avatar di Kneos
    Registrato dal
    Aug 2002
    Messaggi
    128
    String[][] mappa = new String[0] ; cosi? mi pare tu abbia detto che solo la prima dimensione è obbligatoria...la tua osservazione 2) sinceramente non l'ho capita, un esempio?
    ti chiedo di scusare ancora una volta la mia ignoranza, è un mondo totalmente nuovo e cosi diverso resettare la mente a costrutti di un nuovo linguaggio dopo aver programmato in altri per anni non è semplice. grazie ancora.

  9. #19
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Kneos
    String[][] mappa = new String[0] ; cosi? mi pare tu abbia detto che solo la prima dimensione è obbligatoria...la tua osservazione 2) sinceramente non l'ho capita, un esempio?
    ti chiedo di scusare ancora una volta la mia ignoranza, è un mondo totalmente nuovo e cosi diverso resettare la mente a costrutti di un nuovo linguaggio dopo aver programmato in altri per anni non è semplice. grazie ancora.
    Ok, allora una breve panoramica: è vero che solo la prima dimensione è obbligatoria, le altre no (se non servono) ma le [] comunque ci vogliono.
    In sostanza puoi fare:

    new String[0][0]
    oppure
    new String[0][]

    in questo caso, essendo 0 la prima dimensione, in effetti non c'è alcuna differenza: non ha proprio elementi!

    Tieni però presente che fare es.:

    new String[4][0]
    e
    new String[4][]

    sono 2 cose diverse, con contenuti inizialmente differenti (prova a immaginare tu perché ).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #20
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Moderazione

    @Kneos
    Quando posti dei brani di codice, mettili dentro agli appositi tag CODE del forum, altrimenti la formattazione e l'indentazione vanno a farsi benedire. Un esempio:

    [code]
    qui il codice indentato
    [/code]


    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

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.