Я пытаюсь выполнить программу после ввода пользователя с консоли. [код ниже]. Тем не менее, я не хочу завершать работу после завершения выполнения программы. Я хочу, чтобы консоль всегда запрашивала у меня INITIAL_MESSAGE после завершения выполнения. Фактически, после выполнения программы, я хочу, чтобы консоль снова спросила меня INTIAL_MESSAGE, чтобы я мог снова ввести входы, как я хочу, и выполнить программу еще раз. Я на самом деле вызываю в этом методе метод взаимодействия(), от основного метода в качестве отправной точки. Скажите, пожалуйста, как я могу добиться этогоКак продолжать запрашивать ввод в консоль даже после выполнения программы
public class ConsoleInteraction {
/**
* @param args
*/
public static int numberOfJavaTrainees ;
public static int numberOfPHPTrainees ;
Barracks trainingBarrack = new Barracks();
public void interactor() throws IOException {
//reading capability from the consolemessages properties file
ResourceBundle bundle = ResourceBundle.getBundle("resources/consolemessages");
// Create a scanner so we can read the command-line input
Scanner scanner = new Scanner(System.in);
// Prompt for training or viewing camp
System.out.print(bundle.getString("INITIAL_MESSAGE"));
//Get the preference as an integer
int preference = scanner.nextInt();
//Show options based on preference
if(preference == 1)
{
//System.out.println("Whom do you want to train?\n 1.Java Guy \n 2.PHP Guy \n 3.Mix \n Enter You preference:");
System.out.print(bundle.getString("WHO_TO_TRAIN"));
int traineepreference = scanner.nextInt();
if (traineepreference == 1)
{
//System.out.println("How many Java guys you want to train ? : ");
System.out.print(bundle.getString("HOW_MANY_JAVA"));
numberOfJavaTrainees = scanner.nextInt();
trainingBarrack.trainTrainees(numberOfJavaTrainees, 0);
}
else if (traineepreference == 2)
{
//System.out.println("How many PHP guys you want to train ? : ");
System.out.print(bundle.getString("HOW_MANY_PHP"));
numberOfPHPTrainees = scanner.nextInt();
trainingBarrack.trainTrainees(0, numberOfPHPTrainees);
}
else if (traineepreference == 3)
{
System.out.print(bundle.getString("HOW_MANY_JAVA"));
numberOfJavaTrainees = scanner.nextInt();
System.out.print(bundle.getString("HOW_MANY_PHP"));
numberOfPHPTrainees = scanner.nextInt();
trainingBarrack.trainTrainees(numberOfJavaTrainees, numberOfPHPTrainees);
}
else
{
System.out.print(bundle.getString("ERROR_MESSAGE1"));
}
}
else if (preference == 2)
{
System.out.println("Showing Camp to You");
System.out.println("Java trained in Trainee Camp : "+ TraineeCamp.trainedJavaGuys);
System.out.println("PHP trained in Trainee Camp : "+ TraineeCamp.trainedPHPGuys);
}
else
{
System.out.print(bundle.getString("ERROR_MESSAGE2"));
}
scanner.close();
}
}
Добавить петлю вокруг вашего звонка ... ?! – Jan
A для цикла вокруг вызова из основного метода? Как долго я должен продолжать разговор? – DeepJVM
Зависит от того, что вы хотите сделать ... вы можете взаимодействовать с возвратом boolean и сделать это условие цикла. И если исходное сообщениеbid «quit» возвращает false? – Jan