[ sbx @ 16.06.2005. 12:44 ] @
Imam jedno pocetnicko pitanje. Kako da ovo isto napravim s Integerom:
Code:

do{
     System.out.print("Unesite ime:");   
     ime =ulaz.readLine();
     if(ime.length()==0){
     System.out.println("Greska, niste upisali ime!!!");
     }
    }while(ime.length()==0);


Znaci recimo, ako se u neko polje ne unese broj, da javlja gresku i vraca sve dok se broj ne upise.
[ jocat @ 16.06.2005. 13:59 ] @

Evo to bi trebalo da izgleda ovako otprilike :

Code:
 
import java.io.*;

class PrimerZaKonvertovanje{public static void main(String args[]) throws IOException{
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String str;
    int i;
    System.out.println("Unesite brojeve, 0 za kraj.");
    do{
        str = br.readLine();
        try{
            i = Integer.parseInt(str);
        }
        catch(NumberFormatException e){
            System.out.println("Pogrešan format");
            i = 0;
        }
    } while (i!=0);
    }    
}


ovo je malo izmenjeno u odnosu na tvoju želju da se vrti dok se ne upiše broj, ali evo vidiš ideju pa podesi kako ti odgovara.

Ovaj kod prihvata integere različite od nule. Pri unosu nule ili neinteger vrednosti izlazi se iz while uslova...

Joca
[ sbx @ 16.06.2005. 19:40 ] @
Hvala ti na trudu, ali mene zanima kako da napravim da mi radi tako, da kad nista ne upises on javi pogresku i ponovo ti ponudi polje za unos broja, sve dok ne upises broj. Jer ovo tvoje radi tako da kad ne upises broj, on samo izpise pogresku i zaustavlja petlju. Bas ovo kako sam ja napisao samo da bude s integreom, dakle da skroz vrti dok se ne upise integer.
[ jocat @ 16.06.2005. 22:50 ] @


Code:

import java.io.*;

class PrimerZaKonvertovanje{public static void main(String args[]) throws IOException{
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String str;
    int i;
    boolean izadji;

    izadji = true;

    System.out.println("Unesite broj:");
    do{
        str = br.readLine();
        try{
            i = Integer.parseInt(str);
        }
        catch(NumberFormatException e){
            System.out.println("Pogrešan format");
            izadji=false;
        }
    } while (!izadji);
    }    
}


E mislim da je to ono sto ti treba ....
[ jocat @ 16.06.2005. 22:51 ] @

System.out.println("Unesite broj:");

ovaj red je potrebno staviti samo unutar do - while ...
[ sbx @ 17.06.2005. 06:59 ] @
Puno HVALA!!! to je to samo sam morao da dodam jos jednu stvar:

Code:

import java.io.*;

public class PrimerZaKonvertovanje {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str;
        int i;
        boolean izadji;
        izadji = true;

        do {
            System.out.println("Unesite broj:");
            str = br.readLine();

            try {
                i = Integer.parseInt(str);
                izadji = true; // OVO JE FALILO!!!
            } catch (NumberFormatException e) {
                System.out.println("Pogrešan format");
                izadji = false;
            }
        } while (!izadji);

    }
}


Jer ako to ne stavim, desava se da nakon jednog poresnog unosa vise nece da izadje iz petlje! Hvala jos jednom!
Pozdrav!