rtk3752
-
Posts
10 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por rtk3752
-
-
Olá,
Não pude testar... mas veja, você está tentando comparar o usuário e senha do jeito errado.
Não que esteja 100% errado.. é o jeito que você está comparando.
Em java para comparar strings é usado uma função chamada equals()
então tente desta forma:
if ((id.equals(login_correct)) && (senha.equals(password_correct)){}
funcionou!
Valeu neguin de cabelo azul! \o/
Abraço
@edit
Entrando um pouco mais a fundo no erro...
O problema é que essa forma de comparação "==" só funciona para tipos primitivos ... como int, byte, char ...
O String é um objeto, e todo o objeto é comparado pelo método equals() (ou equalsIgnoreCase() caso você não queira diferenciação entre maiúsculas e minúsculas), afinal você tem que comparar os valores de seus atributos.
Por isso, geralmente a gente implementa uma função toString() e uma equals() ...
PS.: Para comparar objeto com null, ai sim você pode colocar:
Saquei!
Valeu Itachi-san!
-
a função "login()" está retornando "false", mesmo quando é colocado o id e senha corretamente.
por que?
import java.util.Scanner;public class Teste{private static Scanner input;public static void main(String args[]){boolean login_check = login();if (login_check){menu();}else{System.out.println("WROOOONG!! :/");}}static boolean login(){String login_correct = "admin";String password_correct = "123456";String id;String senha;input = new Scanner(System.in);System.out.println("ID:");id = input.nextLine();System.out.println("Senha");senha = input.nextLine();if ((id == login_correct) && (senha == password_correct)){System.out.println("True!");return true;}else{System.out.printf("False!");return false;}}static void menu(){System.out.println("menu");}}
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais
COMO VERIFICAR SE HÁ NUMEROS REPETIDOS DENTRO DO VETOR?
em C/C#/C++
Postado
Não testei mas creio que a lógica seja essa.
(é claro que não é a única solução)
//Temos o vetor que você citou
int vetor[6] = {2,3,4,2,5,6};
//A contagem do número de repetições começa do 0
int repeticoes = 0;
//MAX é o tamanho do array e o "MAX > 1" é pra garantir que exista um número a ser comparado dentro do array, você não vai comparar um número com ele mesmo, certo?
for(int i = 0; i < MAX && MAX > 1; i++)
{
for(int j = i + 1; j < MAX; j++)
{
//"vetor[j] == vetor" resumindo, se o elemento selecionado(i) for igual ao outro que está sendo comparado(j), some 1 em repeticoes
if (vetor[j] == vetor)
repeticoes++;
}
}