[RESOLVIDO]Comparar String Com Array

Pessoal não estou conseguindo compara uma string com meu array. Sempre aparece que que meu boolean é true, mesmo não sendo.

[code]
public void compara() throws SQLException{
dao = new UsuarioDAO();

ArrayList<Aluno> x=dao.comparacpf();//Preencho o array com esse metodo que vem da minha Classe DAO

String x2=jTcpf.getText();//jTextField que o usuario digita o CPF

boolean s = false;
for (int i = 0; i < x.size(); i++) {
boolean equals =x2.equals(x);
/*
quero fazer a comparação se x2=x
* entao JOptionPane.showMessageDialog(null, “CPF já cadastrado”);
*/

s=true;


    } 

if(s=true){

JOptionPane.showMessageDialog(null, “CPF já cadastrado”);
}else{
JOptionPane.showMessageDialog(null, “Cadastra”);
}
}[/code]

Mas x não é uma String.

x é um ArrayList<Aluno> e x2 uma String.

então, resumindo:

boolean s = false;

for (int i = 0; i &lt; x.size(); i++) {
     s = x2.equals(x.get(i).getCpf());

     if (s)
        break;
}

if(s)
  JOptionPane.showMessageDialog(null, &quot;CPF já cadastrado&quot;);  
else
  JOptionPane.showMessageDialog(null, &quot;Cadastra&quot;);  

Usar nome de mais intuitivos para as variáveis tbm ajuda na hora de analisar o código. Vai por mim, experiencia própria rs

Abs!

[quote=btafarelo]Mas x não é uma String.

x é um ArrayList<Aluno> e x2 uma String.

então, resumindo:

[code]
boolean s = false;

for (int i = 0; i < x.size(); i++) {
s = x2.equals(x.get(i).getCpf());

 if (s)
    break;

}

if(s)
JOptionPane.showMessageDialog(null, "CPF já cadastrado");
else
JOptionPane.showMessageDialog(null, "Cadastra");
[/code][/quote]

Obrigado a todos pessoal Deu certinho.

freakazoid estou renomeando minhas variaveis.

Valeu!!

[quote=douglasduarte360]…//... if(s=true){ //...[/quote]
Outra coisa é que, ao fazer s = true você não está fazendo uma comparação, mas atribuindo true para s. Para comparar, precisa usar ==
E, como s já é boolean, é totalmente desnecessária essa comparação.

Como @btafarelo já citou, existem outros erros. É bom revisar seu código.