salve ragazzi, devo risolvere un esercizio ma non capisco come mai i cicli while annidati non funzionano


Esercizio
Scrivere un programma DueSequenze che chiede all'utente di inserire due sequenze distringhe, ciascuna di 5 elementi, e poi stampa il messaggio "OK" se almeno una stringa della prima
sequenza compare anche nella seconda, altrimenti stampa il messaggio "NO". Nel caso in cui le due
sequenza abbiano almeno una stringa in comune, i confronti tra le sequenze si devono interrompere non
appena una coppia di stringhe uguali viene trovata.

Io ho svolto l esercizio in questo modo

import java.util.Scanner;


public class DueSequenze {

public static void main(String[] args) {
// TODO Auto-generated method stub


Scanner input = new Scanner ( System . in );
String [] s1=new String[5];
String [] s2=new String[5];
for(int i=0;i<5;i++)
{
System.out.print("inserisci prima frase : ");
s1[i]=input.nextLine();
}
for(int i=0;i<5;i++)
{
System.out.print("inserisci seconda frase : ");
s2[i]=input.nextLine();
}
int ii=5;int j=5;
while(ii>0)
{
j=0;

while(j>0)


{
if(s1[ii].equals(s2[j]))
{
System.out.print("ok ");

ii=0;
j=0;
}
else
{
System.out.print("no ");
}
j++;
}

ii++;
}
}


}