Não consigo Verificar um nome dentro de uma lista

Se alguém puder me ajudar agradeço.
Estou tentando criar uma agenda telefônica para aprendizado próprio, porém não estou conseguindo achar um jeito de arrumar o código, não sei se isto é impossível, por que estou usando um JTextField pra fazer uma verificação com IF, tentei transformar o objeto do JTextField em boolean, mas mesmo assim não caia na decisão True que era pra mostrar na tela que já existe aquele nome.

import java.awt.Font;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
import javax.swing.*;

public class Agenda extends JFrame {

ArrayList <String> Pessoa = new ArrayList<>();

public Agenda(){
    
    //Nome que irá aparecer na janela
    super ("Agenda");
    //Cria o painel
    JPanel p1 = new JPanel(null);
    //Cria os textos que iram aparecer na janela
    JLabel lTitulo = new JLabel("Agenda de contatos");
    JLabel lNome = new JLabel("Nome:");
    JLabel lTelefone = new JLabel("Telefone:");
    //Cria os botões com os nome deles.
    JButton bGravar = new JButton("Gravar");
    JButton bDeletar = new JButton("Deletar");
    JButton bProcurar = new JButton("Procurar");
    JButton bSair = new JButton("Sair");
    
    //Cria o campo de texto para ser preenchido
    JTextField tNome = new JTextField(20);
    JTextField tTelefone = new JTextField(20);
    //É um modelo padrao da lista
    DefaultListModel modelo = new DefaultListModel();
    //Cria uma lista onde pode adicionar os contatos e telefone
    JList lista = new JList();
    //Cria uma "tela" com scroll dependendo da quantidade da lista
    JScrollPane scroll = new JScrollPane(lista);
    
    //Coloca um tipo de fonte com o tamanho da letra
    lTitulo.setFont(new Font("Dialog", Font.PLAIN, 20));

    p1.add(lTitulo);
    p1.add(lNome);
    p1.add(tNome);
    p1.add(lTelefone);
    p1.add(tTelefone);
    p1.add(bGravar);`Texto pré-formatado`
    p1.add(bDeletar);
    p1.add(bProcurar);
    p1.add(bSair);
    p1.add(scroll);

    add(p1);

   lista.setModel(modelo);
   
    //TAMANHO E LOCALIZAÇÃO DOS BOTÕES, LABELS E CAMPO DE TEXTO 
    lTitulo.setBounds(140, 20, 200, 80);
    lNome.setBounds(55, 130, 100, 25);
    tNome.setBounds(100, 130, 350, 25);
    lTelefone.setBounds(40, 180, 100, 25);
    tTelefone.setBounds(100, 180, 350, 25);
    bGravar.setBounds(60, 240, 100, 23);
    bDeletar.setBounds(200, 240, 100, 23);
    bProcurar.setBounds(340, 240, 100, 23);
    bSair.setBounds(200, 320, 100, 23);
    scroll.setBounds(500, 50, 400, 300);

    //TAMANHO DA JANELA INTEIRA
    setSize(1000, 450);
    //QUANDO O USUÁRIO APERTAR O X, O PROGRAMA IRÁ FECHAR
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    // A JANELA VAI FICAR VISIVEL 
    setVisible(true);
    //FAZ A JANELA ABRIR NO MEIO DA TELA
    setLocationRelativeTo(null);
    
    boolean verificacao = Boolean.parseBoolean(tNome.getText());
    
    
    //AÇÕES DE BUTÕES
    
    bGravar.addActionListener((ActionEvent e) -> {
        if(verificacao == true){
            JOptionPane.showMessageDialog(null, "Esse nome já existe.");
        }
        else if(verificacao == false){
            modelo.addElement("Nome: " + tNome.getText()+ " - " + "Telefone: " + tTelefone.getText());
        }
    });
    
    bDeletar.addActionListener((ActionEvent e) -> {
        modelo.removeElement(lista);
    });


}

public static void main (String args[]){
    new Agenda();
}

}

1- O objeto deJTextField é um objeto de JTextField. Caso se refira ao conteúdo do mesmo, este é um objeto do tipo String. Salvo se o valor inserido no JTextField venha a ser “true” ou “false” (sem as aspas, lógico), jamais será possível converter em um Boolean.

2- Essa verificação aqui

Como explicado no item 1, é totalmente incorreta.
Qual o objetivo dela? Verificar se o nome é um nome que já foi inserido na agenda?
Como pretende fazer isso sem varrer a lista e comparar nome por nome?

3 -

Cara, nomes de atributos/variáveis devem, SEMPRE ser escritos com a primeira letra em minúsculo, exceto as constantes.

4 - Você declara o objeto acima, mas, onde você o utiliza?
Por que insere na tal DefaultListModel e não tenta pesquisar neste objeto mesmo?
Dá uma olhada na =documentação desse cara, em específico os método getSize e get ou getElementAt

Porque não procura no google , exemplos semelhantes , documentação só é uma referência básica.

Veja esse site !!!https://docs.oracle.com/javase/tutorial/displayCode.html?code=https://docs.oracle.com/javase/tutorial/uiswing/examples/components/ListDemoProject/src/components/ListDemo.java

Exatamente, referência básica que lista todos os atributos, métodos e afins de uma classe, como sua estrutura hierárquica e a sua localização dentro do “universo java”.
Mas, se você não gosta dela, não a acha boa o suficiente, faz uma nova.

Ele perguntou uma coisa, e você lhe forneceu uma bíblia :wink: