Erro primeira letra maiuscula

14 respostas
L

Meu problema é o seguinte:

Estou com uma lista de nomes e estou deixando a primeira letra de cada nome maiúscula usando o seguinte:

public class teste {
           
    public static String padronizar(String palavra) {    
		
              if(palavra.equals(null)){

			   String primeiraLetra = palavra.substring(0,1).toUpperCase();
			   String restantePalavra = palavra.substring(1);
			   String nome = primeiraLetra + restantePalavra;
		}
	
		return nome;
	   
   }

}

Essa verificação do if foi necessária porque estava dando erro quando não existia palavra.
Mas está dando erro(duplicar a variável ‘nome’) e não consigo resolver.

Alguém sabe o que eu posso fazer?

14 Respostas

evertonsilvagomesjav

l.frias:
Meu problema é o seguinte:

Estou com uma lista de nomes e estou deixando a primeira letra de cada nome maiúscula usando o seguinte:

public class teste {
           
    public static String padronizar(String palavra) {    
	
String nome = ""; 
	
              if(palavra.equals(null)){

			   String primeiraLetra = palavra.substring(0,1).toUpperCase();
			   String restantePalavra = palavra.substring(1);
			  nome = primeiraLetra + restantePalavra;
		}
	
		return nome;
	   
   }

}

Essa verificação do if foi necessária porque estava dando erro quando não existia palavra.
Mas está dando erro(duplicar a variável ‘nome’) e não consigo resolver.

Alguém sabe o que eu posso fazer?

Faz assim

L

Funcionou!

Obrigado Everton

evertonsilvagomesjav

Por nada cara!!

rogelgarcia

Isso aqui:

palavra.equals(null)

Nunca vai dar true

rogelgarcia

E inclusive nao faz sentido

L

É que quando eu postei, esqueci de colocar o ! . Mas no meu código está certo.

rogelgarcia

Mesmo com o ! nao faz sentido

Aí nunca vai dar false…

pedroroxd

vc tem que criar a variável nome antes do if…
E dentro do if vc só seta o que quiser

Trebloc

Ao invés de utilizar equals(null), faça assim:

public static String padronizar(String palavra) {      
    if(palavra == null)
        return ""; // já termina daqui
  
    String primeiraLetra = palavra.substring(0,1).toUpperCase();  
    String restantePalavra = palavra.substring(1);  
    String nome = primeiraLetra + restantePalavra;  

     return nome;  
         
}

Uma outra dica, apenas por estética, é utilizar o método concat ao invés do operador +:

String nome = primeiraLetra.concat(restantePalavra);
L

Obrigado pela ajuda gente!

Só uma última dúvida, fazer

palavra == null e palavra ==""

é a mesma coisa?

rogelgarcia

Esteticamente… eu prefiro o + :smiley:

rogelgarcia

l.frias:
Obrigado pela ajuda gente!

Só uma última dúvida, fazer

palavra == null e palavra ==""

é a mesma coisa?

Não…

evertonsilvagomesjav

l.frias:
Obrigado pela ajuda gente!

Só uma última dúvida, fazer

palavra == null e palavra ==""

é a mesma coisa?

é diferente, se vc quiser testar se esta vazio faz…

palava.isEmpty();
L

Está bem, obrigado mais uma vez.

Criado 25 de março de 2010
Ultima resposta 26 de mar. de 2010
Respostas 14
Participantes 5