JAVA 38일차

이희복·2023년 2월 21일
0

JAVA

목록 보기
7/41

프로그래밍 하시오.

HashSet hSet = new HashSet();
hSet.add(new Person("LEE", 10));
hSet.add(new Person("LEE", 10));
hSet.add(new Person("PARK", 35));
hSet.add(new Person("PARK", 35));

System.onut.println("저장된 데이터 수: " + hSet.size());
System.out.println(hSet);

============
저장된 데이터 수: 2
[LEE(10세), PARK(35세)]


Set 을 이용 하여, 로또 번호를 출력 하시오.


출력이 아래와 같이 나오도록 하시오(필수) ⭐️

HashSet set = new HashSet<>();
set.add(new Num(7799));
set.add(new Num(9955));
set.add(new Num(7799));

    System.out.println("인스턴스 수: " + set.size());

    for(Num n : set)
        System.out.print(n.toString() + '\t');

    System.out.println();

/
====출력
인스턴스 수: 2
7799 9955
/



Set 호출되는 원리와 순서를 설명하시오.

hash code 호출 (두 개 객체 주소-hash code가 같은지 비교)

  • hashCode 는 Object에 있다. 아래의 예시와 같이 오버라이드 한 함수를 통과해 리턴 되는 값으로 군집(집합, 캐비넷)을 만든다. 그리고 그 다음 equals를 호출한다.

equals 호출 (문자열 비교 걸러냄)

  • hash code의 호출로 군집히 형성되면 그 군집 내의 요소들을 비교해 나간다.

0개의 댓글