Salve ,sto cercando di scrivere un metodo per la ricerca binaria per le stringhe,secondo l'ordine lessicografico...mi da un po di problemi potete darmi una mano



codice:

 static void RicercaConTecnicaBinaria(String riga,ArrayList<String> L){
		 int inizio = 0;
		 int fine =L.size();
			
	  while(inizio<=fine){
		  int meta= (inizio+fine)/2;

		  if(riga.compareTo(L.get(meta))==0 ){	 
	         System.out.println("riga In comune"+ riga);
	         return ;
	      }

		  else 
			    if(riga.compareTo(L.get(meta))<0){
			 		     fine=meta-1;
			    }
			    else{
				     inizio=meta+1;
			    }	    	    			            	
	  }		      
		System.out.println("elemento non trovato!!!!!!!!!!!!!!!!!");
    }