Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358

    confronto valore array

    Buon giorno a tutti,

    ho un problema a confrontare un valore contenuto in un array con una stringa. Inizio col rimepire l'array con i dati di un db:

    String[] operatoreDB = new String[Records];
    String[] dataDisp = new String[Records];

    int k = 0;
    while (rs.next()){
    operatoreDB[k] = rs.getString("CodiceOperatore");
    dataDisp[k] = rs.getString("DataDisponibilita");
    k += 1;
    }// end while


    fino a qua funziona correttamente.

    String d = "";
    for (k = 0; k<=(Records-1); k++) {
    d = dataDisp[k];
    if (d.equals(dataF) || d.equals(dataF2)) {

    %>

    <span class="operatori"><%=operatoreDB[k]%><%=perc + "%"%></span>
    <%
    }// end if confronto
    }// end for k
    %>

    Il problema me lo da quando confronto la riga :
    if (d.equals(dataF) || d.equals(dataF2)) { con un valore stringa nella vaiabile dataF o dataF2. Come mai? come faccio a fare questo confronto?

    L'errore che mi da è questo : java.lang.NullPointerException

    Grazie a tutti.

  2. #2
    a occhio direi che d (la variabile) è null.

    sei certo che dataDisp[k] abbia SEMPRE un valore per tutti i k?
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Oppure potrebbe essere che i dati che tiri fuori dal database abbiano bisogno di un bel trim per eliminare eventuali spazi iniziali o finali non voluti.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358
    Ciao

    allora, per il momeno trova 3 valori. Qundi l'array ha 3 elementi. Se tolgo la riga dove c'è IF e stampo k, questa "conta" giustamente fino a 2 ( 0 1 2). Quelle posizioni dell'array sembrerebbero non vuote...

  5. #5
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358
    In ASP ok ma in java cosa utilizzo per togliere gli spazi?

  6. #6
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358
    Ho provato anche a mettere :

    if (d.equals("2006-06-12")) { ma mi da lo stesso errore...

  7. #7
    il fatto che ci siano 3 posizioni nell'array di stringhe non vuol dire che debbano per forza aver dentro qualcosa di non nullo:

    codice:
    if (d!=null && (d.equals(dataF) || d.equals(dataF2))) {
    //...metti il codice che già c'è
    }
    else{
      out.println("In "+k+" c'è un null");
    }
    prova a vedere cosa succede

    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  8. #8
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358
    Hai ragione ora provo..

  9. #9
    Utente di HTML.it L'avatar di jspippo
    Registrato dal
    Jul 2005
    Messaggi
    358
    Non capisco, effettiamente mi da valori nulli per tutte le posizioni. Ma se io tolgo L'IF e stampo dataDisp[k] il valore me lo stampa...

  10. #10
    codice:
    if (d!=null && (d.equals(dataF) || d.equals(dataF2))) {
    //...metti il codice che già c'è
    }
    else{
      out.println("In "+k+" c'è ' "+dataDisp[k]+"'");
    }
    prova così...non è detto che sia null...potrebbero essere anche diversi in effetti...così è più veritiero
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

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.