Comparador de palavra recebida pelo Scanner

Boa tarde, estou tento dificuldade para poder solucionar um problema em um algoritmo, onde eu preciso validar a entrada de valores com base ao valores que já estão armazenados, tipo, tenho 2 variáveis de armazenamento, do tipo string contendo “hyago, lucas, …”, e um array onde cada nome está armazenado em um índice (esse array e string contem os mesmo valores), porem eu preciso adicionar nomes recebidos do scanner e comparada com um desses 2 (array ou string), se o usuário digitou foi o nome que já está armazenado, ele ira salvar no arraylist mas se não for, não ira armazenar e ira mostrar uma mensagem.

Olá, posta o seu código para podermos te ajudar melhor.

No geral é só iterar o array e usar o método equals da classe String para comparar

ok, postando

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Arrays;

class sorteio_de_chaves {

 public static void Exibirmenur(){
    System.out.println("*********************************Menu*****************************************");
    System.out.println("Escolha uma das opções abaixo, e em seguida digite o numero da opção sugerida.");
    System.out.println("0 - Encerra programa.");
    System.out.println("1 - Sorteio e exibição de chaves de luta.");
    System.out.println("2 - Insira os resultado dos ganhadores das chaves.");
    System.out.println("******************************************************************************");
    
}

public static void main(String[] args) throws IOException {
    
   int num,numin, numax = 0, numind = 10, numcont;
   String nome;
   Scanner ler = new Scanner(System.in);
   ArrayList<String> nomes = new ArrayList<>();
    int numini = 0, menu1, c = 0;
    int  menu = 10;
    String formatado = null, chave = null,comentario;
    byte[] texto;
    String leitura = null;
    String url;
    String [] equipes;
    
    
    System.out.println("digite o caminho do arquivo á ser lido.");
    url = ler.next();
  // linha abaixo realizar o processo de localizar o arquivo digitado.
   Path diretorio = Paths.get(url);
    try {
       texto = Files.readAllBytes(diretorio);
       leitura = new String (texto);
    } catch (IOException erro) {
    }
    
    // Linha abaixo pega todos os valores que estão entre , e armazena em 
    //um índice do array.
    equipes = leitura.split(",");
    
    // linha abaixo copia o array e colar no arraylist.
    nomes.addAll(Arrays.asList(equipes));
   
   // Linha abaixo começa a parte de interação com usuario. 
   
    while(numind!=0){
        Exibirmenur();
        numind = ler.nextInt();
        switch(numind){
            case 1:
                 num = nomes.size();
                if (nomes.size()==1) {
                    System.err.println("O ganhador foi: " +nomes.get(num-1));
                }else{
                    if (num%2==1) {
                        numin = (num - 1)/2;
                        int p = num - 2;
                        System.err.println(nomes.get(num -1));
                        for (int i = 0; i < p; i++) {
                        System.out.println(nomes.get(i) +" x "+ nomes.get(p--));
                        }   
                      } else {
                         int p = num / 2;
                         int w = num - 1;
                         for (int i = 0; i < p; i++) {
                         System.out.println(nomes.get(i) +" x "+ nomes.get(w--));     
                         }    
                       }
                    }
                break;
            case 2: 
                int teste;
                nomes.clear();
                do {
                    c = c+1; 
                    System.out.println("Digite o nome do ganhador");
                    nome = ler.next();
                     
                   for (int i = 0; i > equipes.length; i++) {
                         if (nome.equals(equipes[i])) {
                            nomes.add(nome);
                            System.err.println("Tem mais ganhador? Se for sim digite 1, se não digite 0");
                            break;
                        } else {
                            System.out.println("Nao encontrado");
                            System.err.println("Tem mais ganhador? Se for sim digite 1, se não digite 0");
                        }
                      
                    }
                                         
                    teste = ler.nextInt();                     
                } while (teste!=0);
                if(c >17){
                    chave ="Eliminatorias"; 
                }else{
                    switch(c){                           
                    case 1:
                        chave = "Ganhador";
                        break;
                    case 2:
                        chave = "Final";
                        break;
                    case 3:
                        chave = "Semifinal_impar"+c;
                        break;
                    case 4:
                        chave = "Semifinal"+c;
                        break;
                    case 5:
                        chave = "Semifinal_impar"+c;
                        break;
                    case 6:
                        chave = "Semifinal_impar"+c;
                        break;
                    case 7:
                        chave = "Quarta_de_final_impar"+c;
                        break;
                    case 8:
                       chave = "Quarta_de_final"+c;
                       break;
                    case 9:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 10:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 11:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 12:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 13:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 14:
                       chave = "Quarta_de_final_impar"+c;
                       break;
                    case 15:
                       chave = "Oitava_de_final_impar"+c;
                       break;
                    case 16:
                       chave = "Oitava_de_final"+c;
                       break;
                    default:
                         
                }
                     }
                System.err.println("Digite o diretorio da pasta, para salvar o arquivo.\n "
                + "Obsevação use o '\\' no final, caso não tenha colocado. ");
               
                url = ler.next();
                
                FileWriter arq = new FileWriter(url+chave+".txt");
                PrintWriter gravarArq = new PrintWriter(arq);
    
                for (int i = 0; i < nomes.size(); i++) {
                        gravarArq.printf(nomes.get(i)+"\r\n");
                    } 
                
                arq.close();
                break;
            default:
        }
        
    }
    
}

}

Não entendi muito bem o problema, mas dá uma olhada pra ver se esse código pode te ajudar:

public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    List<String> lista = new ArrayList<>();
    String[] nomes = {"hyago", "lucas"}; //Array contendo os nomes
    System.out.print("Informe um nome: ");
    String nome = scan.nextLine(); //Variável recebendo o nome informado pelo usuário
    for (int i = 0; i < nomes.length; i++) { // For para iterar o array com os nomes
        if (nome.toLowerCase().equals(nomes[i])) { //Verifico se o nome passado pelo usuário contém no array (toLowerCase é opcional)
            lista.add(nome); //Adiciono no ArrayList caso contenha o nome no array
            System.out.println("Nome adicionado! Tamanho da lista: " + lista.size());
        } else if (i == (nomes.length - 1) && lista.isEmpty()) { //Se o for chegar ao final da lista e não adicionar nenhum nome a mensagem abaixo será exibida
            System.out.println("O nome não foi adicionado!");
        }
    }
}