From 8461a3a8fdc02701654cc8cc7f37b8abeab0da9f Mon Sep 17 00:00:00 2001 From: gellivar Date: Tue, 24 Jun 2025 16:07:06 +0300 Subject: [PATCH] =?UTF-8?q?(HashSet)=20=D0=A0=D0=B5=D1=88=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=B7=D0=B0=D0=B4=D0=B0=D1=87=D0=B8=205.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Solution.java" | 82 ++++++++++++++++++- 1 file changed, 81 insertions(+), 1 deletion(-) diff --git "a/src/com/school/faang/hashset/\320\267\320\260\320\264\320\260\321\207\320\260_5/Solution.java" "b/src/com/school/faang/hashset/\320\267\320\260\320\264\320\260\321\207\320\260_5/Solution.java" index 38f2c78..9d0acb8 100644 --- "a/src/com/school/faang/hashset/\320\267\320\260\320\264\320\260\321\207\320\260_5/Solution.java" +++ "b/src/com/school/faang/hashset/\320\267\320\260\320\264\320\260\321\207\320\260_5/Solution.java" @@ -1,7 +1,87 @@ package com.school.faang.hashset.задача_5; +import java.util.ArrayList; +import java.util.Objects; +import java.util.HashSet; +import java.util.List; + public class Solution { - public static void main(String[] args) { + static class Player { + private String nickname; + private String status; + + public Player(String nickname, String status) { + this.nickname = nickname; + this.status = status; + } + + @Override + public int hashCode() { + return Objects.hash(nickname); + } + + @Override + public boolean equals(Object o) { + if (o == null) { + return false; + } + Player player = (Player) o; + + return nickname.equals(player.nickname); + } + + String getNickname() { + return nickname; + } + + String getStatus() { + return status; + } + } + static class GameLobby { + private HashSet players; + private List playerJoinOrder; + + public GameLobby(HashSet players, ArrayList playerJoinOrder) { + this.players = new HashSet<>(); + this.playerJoinOrder = new ArrayList<>(); + } + + void addPlayer(String nickname) { + Player player = new Player(nickname, "Не готов"); + if (players.add(player)) { + playerJoinOrder.add(player); + } + } + + void removePlayer(String nickname) { + Player player = new Player(nickname, "Не готов"); + players.remove(player); + playerJoinOrder.remove(player); + } + + boolean hasPlayer(String nickname) { + Player player = new Player(nickname, "Не готов"); + return playerJoinOrder.contains(player); + } + + void displayPlayers() { + for (Player player : playerJoinOrder) { + System.out.println(player.getNickname() + " " + player.getStatus()); + } + } + } + + public static void main(String[] args) { + GameLobby lobby = new GameLobby(new HashSet<>(), new ArrayList()); + lobby.addPlayer("gellivar"); + lobby.addPlayer("jeenek"); + lobby.addPlayer("S1mple"); + lobby.addPlayer("doggy"); + lobby.addPlayer("gellivar"); + lobby.displayPlayers(); + lobby.removePlayer("jeenek"); + lobby.displayPlayers(); } }