Olá pessoal,
Alguém sabe me dizer o porquê da condição do meu “if” destacada na figura abaixo não está funcionando ?
No exemplo da figura, entrei com o valor “a” para a variável nomeProduto e comparei com o valor de retorno da lista (list.get(b).pegarNome() ) que no caso foi “a”. O problema é que essa droga não entra na condição verdadeira se nomeProduto for igual a …PegarNome(), e juro que não sei porque …
Notem que no resultado, ambos tem o memso valor, mas essa droga não entra no IF se a expressão for verdadeira 
public static void execute() {
List<EstoqueProfile> list = new ArrayList<EstoqueProfile>();
Scanner entrada = new Scanner (System.in);
String nomeProduto;
int codigo;
int quantidade;
String check = "diferente";
char sair = 'a';
int counter = 0;
for (int i = 0; sair != 's'; i++ ){
System.out.println ("Digite o nome do produto: ");
nomeProduto = entrada.next();
System.out.println ("Digite o código do produto: ");
codigo = entrada.nextInt();
System.out.println ("Digite a quantidade do produto: ");
quantidade = entrada.nextInt();
if ( counter != 0 ){
for ( int b = 0; b < list.size(); b++ ){
System.out.println ("nomeProduto: " + nomeProduto + " lista: " + list.get(b).pegarNome());
[size=18][b] if (nomeProduto == list.get(b).pegarNome()){[/b][/size]
System.out.println ("Esse produto já existe, adicione um novo produto");
check = "igual";
break;
} else {
check = "diferente";
}
}
System.out.println ("igual ou diferente: " + check);
if ( check == "diferente"){
list.add(new EstoqueProfile (nomeProduto, codigo, quantidade));
}
} else {
list.add(new EstoqueProfile (nomeProduto, codigo, quantidade));
System.out.println ("entrou1: nome " + list.get(counter).nomeProduto + " Contador: " + counter);
System.out.println ("tamanho: " + list.size());
counter = 1;
}
System.out.println("Deseja sair ? (S/N): ");
sair = entrada.next().charAt(0);
}
printList(list);
}
public class EstoqueProfile {
String nomeProduto;
int codigo;
int quantidade;
EstoqueProfile(String name, int code, int amount) {
this.nomeProduto = name;
this.codigo = code;
this.quantidade = amount;
// throw new UnsupportedOperationException("Not yet implemented");
}
public String pegarNome (){
return this.nomeProduto;
Obs.: esse igual e diferente escrito errado já foi corrigido 
Se alguém puder me ajudar, ficarei muito grato !!!
Obrigado !!
