Qual o erro aqui?

for (int i = 0; i < lista1.size(); i++){

if (lista1.get(pos) == lista2.get(i)){

dif = i - pos;

if (dif == 0){

System.out.println(“Os elementos estão na mesma posição nas listas.”);
pos++;
i = 0;
}
if (dif != 0){

System.out.println("O elemento esta na "+pos+
"ª na lista1 e na "+i+“ª posição na lista2. A diferença é:”+dif);
pos++;
i = 0;
}
}
}

ele só faz o loop até 3 qdo na verdade list1.size() = 10.
PQ?

isso:

 if (lista1.get(pos) == lista2.get(i))

nunca vai funcionar, vc ta comparando objetos, para isso use o metodo equals.

esse operador compara posições na memmoria.

[]'s

valeu galera…resolvido

Pelo que entendi você quer comparar duas listas e identificar a posição de dois elementos iguais em cada lista.
Se for isso, tente dessea forma:

for(int pos = 0;pos < lista1.size();pos++)
{

 for (int i = 0; i < lista1.size(); i++)
 {  

      if (lista1.get(pos) == lista2.get(i))
      { 

           dif = i - pos; 

           if (dif == 0)
           { 

                System.out.println("Os elementos estão na mesma posição "); 
		
            }

           if (dif != 0)
           { 

                System.out.println("O elemento esta na "+pos+ 
                "ª na lista1 e na "+i+"ª posição na lista2. A diferença é:"+dif); 

           } 
      } 
 }

}