Salve a tutti

premetto che ho poca esperienza di Java. Detto questo: ma da un ciclo while non si dovrebbe uscire immediatamente non appena cambia la condizione? Perché io ho due cicli innestati e da quello più interno, se l'utente preme X,devo uscire da entrambi. Io avrei fatto una cosa del genere (questa che ho scritto non è ovviamente quello che ho fatto, l'ho semplificata per farvi capire):

codice:
while (!tornaMenuPrincipale) {
           if (fotoTrovate.size() == 0) {
		stampaMsgAvviso("Nessuna foto corrispondente al parametro cercato");
	   } 	else {
		sampaMsgAvviso("Inserire un ulteriore criterio di selezione");
	   }
					
	   while (!ricercaAvviata) {	
						
			//Legge l'input dell'utente
			cercaTitoloAv = creaCampoTitolo();
						
			//Se l'utente ha digitato 'x' o 'X', esce dal metodo		
                         if(cercaTitoloAv.equalsIgnoreCase("x")){
				ricercaAvviata = true;
                                tornaMenuPrincipale = true;
			  } else {
                               ...
                          }			
	   } 
}
Il problema è nel pezzo in grassetto, cioè che non riesco a uscirne a meno che non metta un'etichetta al ciclo esterno e un break: etichetta nel momento in cui deve uscire. Ora mi viene il dubbio che evidentemente non abbia capito come funzioni davvero il while...

Potete aiutarmi? Grazie mille