user551163
user551163

Reputation: 13

Do-while question java

My program will provide information on buildings, which is stored in an online Oracle database. I got it to ask the user to enter the building number and then run and display the results of several queries.

Here is what I got so far:

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

However, what I can't figure out is how /where to use the do-while clause to keep asking for the building number until the user enters 0 at which point the program would print "Thank you for your time" and stop.

Any help would be greatly appreciated.

Upvotes: 1

Views: 2665

Answers (3)

user284291
user284291

Reputation:

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);
    }
}

Upvotes: 1

Jigar Joshi
Jigar Joshi

Reputation: 240870

 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"));  

better way is to

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
         }

}

Upvotes: 3

ndtreviv
ndtreviv

Reputation: 3624

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
        */      
    }
}

Upvotes: 1

Related Questions