2010-12-22 21 views
1

Mein Programm wird Informationen über Gebäude liefern, die in einer Online-Oracle-Datenbank gespeichert ist. Ich habe es gebeten, den Benutzer zu bitten, die Gebäudenummer einzugeben und dann die Ergebnisse von mehreren Abfragen laufen zu lassen und anzuzeigen. HierDo-While-Frage Java

ist, was ich habe, so weit:

String userbnumber = null; 
try { 
    BufferedReader obj = new BufferedReader(new InputStreamReader(System.in)); 
    System.out.print("Please enter the building number: "); 
    userbnumber = obj.readLine(); 
} catch (IOException e) { 
} 
// A Lot of queries which use userbnumber as the basis for getting data from tables 

Doch was ich nicht herausfinden kann, ist, wie/wo verwenden die do-while-Klausel für die Gebäudenummer fragen zu halten, bis der Benutzer eingibt 0 An diesem Punkt würde das Programm "Danke für Ihre Zeit" drucken und stoppen.

Jede Hilfe würde sehr geschätzt werden.

+4

Im Ernst, keine Ausnahmen schlucken. –

+0

Wenn dies Hausaufgaben sind, bitte markieren Sie sie als solche. – Lucero

Antwort

3
BufferedReader obj = new BufferedReader(new InputStreamReader(System.in)); 
do { 
    try { 
     System.out.print("Please enter the building number: "); 
     userbnumber = obj.readLine(); 
     if(!usernumber.equals("0"){ 
     //perform action here 
     } 
    } catch (IOException e) { 
     //handle it 
    } 
} while(!userbnumber.equals("0")); 

besserer Weg ist, um

while(true){ 
     try { 
      System.out.print("Please enter the building number: "); 
      userbnumber = obj.readLine(); 
      if(usernumber.equals("0"){ 
        break; 
      } 
      //perform action here 
     } catch (IOException e) { 
      //handle it 
     } 

} 
+0

Sie sollten vor dem Ausführen der Aktion prüfen, ob eine Eingabe ungleich Null vorhanden ist. Deshalb glaube ich an 'read(); while() {// action} 'stattdessen. – marcog

+0

@marcog ja auch einen anderen Weg vorgeschlagen –

+0

Es sieht eher so aus, als würden Sie die Schleife umgehen, selbst wenn es eine 'IOException' gibt. –

1
package pack34; 

import java.sql.*; 
import java.io.*; 

public class Letstryagain34 { 
    public static void main(String args[]) 
    { 
    String userbnumber = null; 
    try { 
     BufferedReader obj = new BufferedReader(new InputStreamReader(System.in)); 
     System.out.print("Please enter the building number: "); 
     userbnumber = obj.readLine(); 
     } 
     catch (IOException e) { 
      // handle it! 
     } 
     /*A Lot of queries which use userbnumber as the basis for getting data from tables 
     */  
do{ 
/* Fetch the Question from Database & write back the answer here*/ 

     System.out.print("Want to continue : "); 
int choice = obj.readLine(); 
}while(choice!=0); 
    } 
} 
1
package pack34; 

import java.sql.*; 
import java.io.*; 

public class Letstryagain34 { 
    public static void main(String args[]) 
    { 
    String userbnumber = null; 
    try { 
     BufferedReader obj = new BufferedReader(new InputStreamReader(System.in)); 
     do{ 
      System.out.print("Please enter the building number: "); 
      userbnumber = obj.readLine(); 
     }while(!"0".equals(userbnumber)) 
      System.out.println("Thank you for your time"); 
     } 
     catch (IOException e) { 
      System.out.println("Argh! Nasty error.."); 
     } 
     /*A Lot of queries which use userbnumber as the basis for getting data from tables 
     */  
    } 
}