PDA

Visualizza la versione completa : [java] inserimento dati


etabeta_7
17-11-2003, 17:08
ciao a tutti

vorrei sapere se e' possibile dire in un jOptionPane che i valori che si scrivon oposso essere solo numeri


cioe' nel momento in cui do invio faccio un controllo e se non sono numeri (almeno 5 ) mi da un allert

String nuovoCodice = JOptionPane.showInputDialog(this, "INSERISCI UN CODICE NUOVO");
Indirizzo temp = elencoTelefonico.indirizzoPerCodice(nuovoCodice);
if (!nuovoCodice.equals("")) {

questo va bene quando non inserisco niente poi volevo aggiungere anche quello dei valori del campo

solo che non so come scriverlo


non so se mi sono spiegato!!! :master:

LeleFT
17-11-2003, 22:48
Se non ho capito male tu vuoi fare in modo che, se l'utente inserisce un valore che non un numero (una stringa qualsiasi, per esempio "Ciao"), questa stringa venga ignorata e richieda di nuovo l'inserimento. In pi, il numero da inserire dovrebbe essere di 5 cifre.
Per testare se il valore inserito un numero o una stringa puoi vedere se, convertendolo in un intero (cinque cifre ci stanno benissimo in un int), viene sollevata un'eccezione:


boolean errore_intero;
boolean altroerrore;
String nuovocodice;
int numero;
do {
errore_intero = altroerrore = false;
nuovocodice = JOptionPane.showInputDialog(this, "INSERISCI UN CODICE NUOVO");
if (!nuovocodice.equals("")) {
try {
numero = Integer.parseInt(nuovocodice);
} catch (Exception e) {
// Non stato immesso un numero ma una stringa!
errore_intero = true;
}
if (!errore_intero) {
// a questo punto 'numero' contiene il numero introdotto
// controlli che sia di 5 cifre
if (nuovocodice.length() == 5) {
// Qui sai che stato introdotto un numero di 5 cifre.
} else altroerrore = true;
}
} else {
altroerrore = true;
}
} while (errore_intero || altroerrore);


Questo dovrebbe fare al caso tuo. Non l'ho provato, ma dovrebbe funzionare a meno di errori sintattici o qualche errore semantico che mi sfuggito.


Ciao.

Loading