Bom dia, comecei no java a pouco e estou fazendo o FJ-11 - OO com a caelum em Brasília. Surgiu uma dúvida, como eu faço para pegar algo digitado pelo Scanner e passar como parâmetro para um método ?
publicclasstestaGerente{publicstaticvoidmain(String[]args){Gerenteandre=newGerente();andre.setCargo("Gerente de RH");andre.setCpf("[CPF removido]");andre.setNome("Andre");andre.setSalario(3000);andre.setUltimoNome("Costa");andre.setUsuario("Andre.Costa");andre.setSenha(123);System.out.println("Digite seu Login: ");Stringlogin=andre.pegaLogin();System.out.println("Digite sua Senha: ");intpass=andre.pegaSenha();andre.autentica(login,pass);}}
Por algum motivo digitando no login: Andre.Costa e na senha 123 a autenticação não está funcionando. Agradeço novamente a ajuda !
M
Mike
Strings se comparam com o método equals ao invés de ==
Em alguns casos específicos o == funciona, mas no geral, é sempre melhor usar equals.
Quando utilizado com tipos primitivos o == compara o valor.
Quando utilizado com objetos, o == compara a referência, ou seja, se as duas variáveis referenciam (apontam para) o mesmo endereço de memória.
Como String's são objetos, utilize o método equals para comparar seu conteúdo.
R
rennanvoa2
Muito obrigado novamente @staroski funcionou ! Como vim do python pro java sempre esqueço do Equals.