vorrei fare un programma che prende dalla linea di comando una stringa (args[0]) e confronta con stringa contenente nel metodo main.
esempio: args[0]="prova";
e il metodo ha stringhe "prova" e "prova2";
output: prova
poi l'utente deve ridigitare dalla linea di comando un altra Stringa senza terminare, termina solo quando la Stringa non è ne "prova" ne "prova2".

ecco quello che ho provato a fare:

codice:

public class Prova {

		public static void main(String[]args){

		        String p1="prova", p2="prova2";
			boolean flag=false;
		do {
			flag=false;

			if (args[0].equals(p)){
				System.out.println(p);
				flag=true;
			}

			if (args[0].equals(p2)){
				System.out.println(p2);
				flag=true;
			}



		}while (flag==false);


			
			return;
		}
}
non capisco perchè quando provo a digitare dalla linea di comando alla prima volta il seguente comando
javac prova.java
java prova prova
funziona
alla seconda non mi compare le 2 voci cioè (javac prova.java e java prova prova2)
come faccio?