Alguem tem uma pq esse comando abaixo nao funciona???
e passo essa variável “SIM”, ela esta passando corretamente, pois ja coloquei para mostrar ela antes do comando “if” e ela é exibida normalmente.
public List buscar(String tipo)
{
if (tipo == “SIM”)
{
//comandos
}
}
e esse comando abaixo funciona
if (tipo != “NAO”)
{
//comandos
}
mas preciso fazer com q o comando de igualdade funcione.
Não tem um “melhor” ou “pior”, depende do que você quer. O equals vai comparar exatamente o que estiver escrito e o equalsIgnoreCase vai ignorar a diferença entre letras maiúsculas e minúsculas. Por exemplo:
Comparando “Sim” com “SIM”. Se você usar o equals, ele vai falar que não é igual, porque as letras I e M estão em minúsculo no primeiro caso e em maiúsculo no segundo. Agora, se você fizer a mesma comparação com o equalsIgnoreCase, ele vai falar que está igual.
Para esse caso, talvez você até possa usar o equalsIgnoreCase, mas nem sempre é legal ignorar o “case” das strings.
[code]public List buscar(String tipo){
tipo = tipo.toLowerCase();
if(tipo.equals(“sim”)){
//comandos
}
public List buscar(String tipo){
tipo = tipo.toLowerCase();
if(tipo.equalsIgnoreCase(“sim”)){
//comandos
}
} [/code]
Mas isso é facil de resolver. Só colocar um toLowerCase();
Geralmente o ignoreCase é bom de ser usado em situações onde o usuário pode deixar o campo em nulo também. Ai o valor padrão seria Não.
É isso
O exemplo que você passou está incorreto. Você pode sim utilizar o .toLowerCase(), seria dessa maneira:
public List buscar(String tipo){
tipo = tipo.toLowerCase();
if(tipo.equals("sim")){
//comandos
}
}
Porém, isso não vai inpedir o NullPointerException caso o usuário passe null para o parâmetro “tipo”. A melhor maneira, que não causará nenhum erro caso receba um parâmetro null, acredito que seja:
public List buscar(String tipo){
if ( "sim".equalsIgnoreCase( tipo ) ) {
//comandos
}
}
public List buscar(String tipo){
if (tipo != null && tipo.trim().length()>0){
tipo = tipo.toLowerCase();
if(tipo.equalsIgnoreCase("sim")){
//comandos
}
}else{
jOptionPane.showmessageDialog(null,"Não deixe o campo Nulo")
}
}
Pode ser assim tmb.
Só nao lembro se precisa do Trim()