Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: programma java

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    5

    programma java

    Salve, sto realizzando un programma in Java, ho 20 textfield denominate tf1, tf2, tf3... tf20
    Su ognuna di esse effettuo gli stessi controlli e alcune operazioni, volevo sapere se esiste un metodo che permette di farlo tramite un ciclo for, e che quindi permette di impostare il nome della variabile a runtime.

    Mi spiego in altre parole con un esempio:
    il programma effettua questo controllo per ogni textfield:

    if (tf1.getText().toString().contentEquals("")==false ) {...}

    if (tf2.getText().toString().contentEquals("")==false ) {...}

    ...

    if (tf20.getText().toString().contentEquals("")==fals e) {...}




    Vorrei trovare un metodo per poter fare:

    for(i=0;i<20;i++){
    if (tf 'i+1' .getText().toString().contentEquals("")==false) {...}
    }

    dove per tf 'i+1' intendo le varie textfield

    mccet

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Invece di 20 campi diversi fatti un array di 20 elementi, no?
    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
    Jun 2013
    Messaggi
    5
    ma quelle sono caselle di testo...

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da mccet
    ma quelle sono caselle di testo...
    E quindi?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    5
    e quindi se ogni casella di testo ha un nome suo, non capisco come posso fare a utilizzare l'array.

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da mccet
    e quindi se ogni casella di testo ha un nome suo, non capisco come posso fare a utilizzare l'array.
    Non capisco il problema...

    Invece di avere
    codice:
    TextField tf1 = ...;
    TextField tf2 = ...;
    ...
    TextField tf20 = ...;
    hai

    codice:
    TextField[] textFields = new TextField[20];
    textFields[0] = ...;
    textFields[1] = ...;
    ...
    textFields[19] = ...;
    E invece di chiamare -ad esempio- tf2.getText() chiamerai textFields[1].getText().
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

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

    getText() immagino restituisca già una stringa, il toString() non serve

    E per vedere se una stringa è vuota è più pulito usare length() che confrontarla con la stringa vuota:

    codice:
    for (int i = 0; i < textFields.length; i++) 
    {
        if (textFields[i].getText().trim().length() > 0) 
        {
            // il (i+1)-esimo campo e' non vuoto
        }
    }
    }
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    5
    Hai ragione!
    Ti ringrazio infinitamente!

  9. #9
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da mccet
    Hai ragione!
    Ti ringrazio infinitamente!
    Figurati
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da Alex'87

    E per vedere se una stringa è vuota è più pulito usare length() che confrontarla con la stringa vuota:
    Ok, ma attenzione al trim()

    codice:
    String str = "\t";   // Questa non è una stringa vuota
    
    if (str.trim().length() == 0) {
       // Questo test è verificato, ma la mia stringa mica è vuota...
    }
    
    str = "   ";   // Anche questa non è vuota
    
    if (str.trim().length() == 0) {
       // Questo test è verificato, ma la mia stringa mica è vuota...
    }
    Se per stringa vuota si intende una stringa che contenga almeno un carattere non whitespace, il tuo test è perfetto... altrimenti è necessario togliere il trim().

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