- [자료 구조] 11. Set 인터페이스 예제 : 고유 사용자 ID 관리 시스템2024년 05월 10일
- Song hyun
- 작성자
- 2024.05.10.:04
728x90반응형[자료 구조] 11. Set 인터페이스 예제 : 고유 사용자 ID 관리 시스템
예제 개념: 고유 사용자 ID 관리 시스템
상황 설명: 웹사이트에 접속하는 사용자의 ID를 관리하는 시스템을 개발합니다. 사용자 ID는 고유해야 하며 중복을 허용하지 않습니다. 시스템은 사용자가 로그인할 때마다 ID를 체크하고, 새로운 사용자 ID를 등록할 때 중복을 방지합니다.
1. 풀이 코드와 작성한 코드를 비교하며 느낀 점
2. 풀이 코드
// 시스템 실행 public void run() { // 동작 - 스캐너 활용 // 실행 흐름 만들기 --> while , if // 결과 -> 정상 유저 등록 // -> 이미 등록된 사용자 입니다. Scanner scanner = new Scanner(System.in); while (true) { System.out.println("사용자 아이디를 입력 하세요"); String input = scanner.nextLine(); // String 값 입력 받기 if("exit".equals(input)) { System.out.println("시스템을 종료 합니다."); break; // while 종료 } boolean isRegistered = registerUserID(input); if(isRegistered) { System.out.println("새로운 사용자가 등록 되었습니다" + input); } else { System.out.println("이미 등록된 사용자 입니다" + input); } } scanner.close(); }
3. 내가 작성한 코드
package Structure.ch06; import java.util.HashSet; import java.util.Scanner; public class UniqueUserIDSystem { private HashSet<String> userIDs; public UniqueUserIDSystem() { this.userIDs = new HashSet<String>(); } // 사용자 ID 등록 기능 // 정상적으로 들어가면 true // 중복 발생하면 false public boolean registerUserID(String userID) { if(userIDs.add(userID)==false) { System.out.println("이미 등록된 사용자입니다."); System.out.println("------------------"); return false; } else { System.out.println("성공적으로 등록되었습니다."); System.out.println("------------------"); return userIDs.add(userID); } } // 시스템 실행 public void run() { // 동작 - 스캐너 활용 // 실행 흐름 만들기 -> while, if // 결과 -> 정상 유저 등록 int count =0; while(count<2) { System.out.println("------------------"); System.out.println("로그인을 시작합니다. ID를 입력해주세요 : "); Scanner scanner = new Scanner(System.in); String userID=scanner.next(); registerUserID(userID); count++; } System.out.println(userIDs); } private Scanner next() { // TODO Auto-generated method stub return null; } // 코드 테스트 public static void main(String[] args) { UniqueUserIDSystem system =new UniqueUserIDSystem(); system.run(); } // end of main }
728x90반응형'자료 구조 > 기본 개념' 카테고리의 다른 글
[자료 구조] 13. Map 인터페이스 사용 예제 :회원 가입 순서 기록 및 조회 시스템 (0) 2024.05.13 [자료 구조] 12. Map 인터페이스 (0) 2024.05.13 [자료 구조] 10. Set 인터페이스 (0) 2024.05.10 [자료 구조] 9. List 인터페이스 활용 : 영화 평점 관리 시스템 예제 만들기 (0) 2024.05.09 [자료 구조] 8. List 인터페이스 (0) 2024.05.09 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)