Minha primeira pergunta, gente n estou conseguindo fazer td o código, alguém poderia me ajudar? obrigada!
Escreva um algoritmo que permita a leitura dos nomes de 10 pessoas e armazene os nomes lidos em um vetor. Após isto, o algoritmo deve permitir a leitura de mais 1 nome qualquer de pessoa e depois escrever a mensagem ACHEI, se o nome estiver entre os 10 nomes lidos anteriormente (guardados no vetor), ou NÃO ACHEI caso contrário.
public static void main(String[] args) {
String nomes[] = new String[10];
String nome = " ";
int i = 0;
boolean encontrou;
Entrada.leiaInt("Digite o nome " + i);
System.out.print(nomes[i]);
Entrada.leiaString("Digite um nome a ser buscado");
System.out.print(nome);
encontrou = false;
if (nomes[i] == nome) {
encontrou = true;
}
if (encontrou = true) {
System.out.print(" O nome encontra-se no vetor");
} else {
System.out.print(" O nome não se encontra no vetor ");
}
}
No caso vc precisaria usar um for, eu mostro no código abaixo.
Quando vc vai testar uma variável do tipo boolean, não precisa colocar if (encontrou == true), basta colocar if (encontrou).
Quando vc vai comparar String, quase sempre é uma ideia ruim usar nome[0] == "string", vc deve usar os métodos equals ou equalsIgnoreCase como eu fiz abaixo.
No Java, por convenção, quando declaramos um array, colocamos os colchetes logo após o tipo e não após o nome como vc fez. Não está errado fazer String nomes[], é só uma questão de convenção mesmo, para facilitar a leitura e evitar confusão que fazemos String[] nomes.
A ideia daquele break dentro do if é para fazer o loop parar caso ele encontre o nome desejado.
public class Program {
public static void main(String... args) {
String[] nomes = new String[5];
for (int i = 0; i < nomes.length; i++) {
nomes[i] = Entrada.leiaString("Digite o " + (i + 1) + "º nome: ");
}
String nomeDesejado = Entrada.leiaString("Digite o nome que deseja encontrar: ");
boolean encontrou = false;
for (int i = 0; i < nomes.length; i++) {
if (nomes[i].equalsIgnoreCase(nomeDesejado)) {
encontrou = true;
break;
}
}
if (encontrou) {
System.out.println("ACHEI");
} else {
System.out.println("NÃO ACHEI");
}
}
}