Как можно проверить наличие ссылочной переменной в ArrayList, передав в качестве аргумента переменную типа String?

import java.util.ArrayList;
import java.util.Scanner;

public class ClientTest {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        ArrayList<Client> clients = new ArrayList<Client>();
        Client firstClient = new Client("Alter", 15, 2000);
        Client secondClient = new Client("Rider", 16, 3000);
        clients.add(firstClient);
        clients.add(secondClient);

        Session session = new Session();

        while (true) {
            System.out.print("Войдите в систему: ");
            String clientName = in.nextLine();
            if (clients.contains(clientName)) {
                System.out.println("УСПЕХ");
            } else {
                System.out.println("Такого пользователя не существует.");
                continue;
            }
        }
    }
}

Проблема в этих строках кода:

String clientName = in.nextLine();

if (clients.contains(clientName)) {

Я понимаю, что в качестве аргумента у меня совершенно другая переменная, которая указывает на совсем другой объект типа String, но мне хочется как-то переопределить его в тип Client, чтобы я смог проверить наличие такой ссылки в списке, с названием переменной например: firstClient


Ответы (1 шт):

Автор решения: Igor
        String clientName = in.nextLine();
        boolean contains = false;
        for (Client cl: clients) {
          if (cl.name.equals(clientName)) {
            contains = true;
            break;
          }
        }
        if (contains) {
          ...
→ Ссылка