inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

자바 메모리 관련 질문입니다.

미해결

김영한의 실전 자바 - 중급 1편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 메서드 영역은 클래스 정보 static 영역 런타임 상수 풀 이렇게 세가지로 구성되어 있는걸로 알고 있습니다. static 중첩 클래스, static이 없는 내부 클래스는 메모리 구조상 어디에 저장 되나요?

  • java
  • 객체지향
공희배 댓글 1 좋아요 0 조회수 239

장바구니 minus 질문있습니다!

해결됨

김영한의 실전 자바 - 중급 2편

public void minus(Product product, Integer minusQuantity) { Integer quantity1 = cartMap.get(product); int newQuantity = quantity1 - minusQuantity; if (newQuantity <= 0) { cartMap.remove(product); } else { cartMap.put(product, newQuantity); } } 정말 기본적인 질문인거같은데 이해가 안돼서 질문드립니다 저 else문을 안쓰고 그냥 put하면 수량은 0이 되는데 키가 지워지지 않더라구요 근데 else문을 사용하니까 키가 사라지는데 무슨 차이일까요 ㅠㅠ remove는 이미 if문에서 실행이 돼야되는거 아닌가요

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
동형 댓글 1 좋아요 1 조회수 280

타입 이레이져 예시 관련 질문

미해결

김영한의 실전 자바 - 중급 2편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] class EraserBox<T> { public boolean instanceCheck(Object param) { return param instanceof T; // 오류 } public void create() { return new T(); // 오류 } } public class MyArrayListV4<E> { private static final int DEFAULT_CAPACITY = 5; private Object[] elementData; private int size = 0; @SuppressWarnings("unchecked") public E get(int index) { return (E) elementData[index]; // 오류 X } 두 예시 모두 런타임 시점에 타입을 활용하는 걸로 보이는데 처음 예시에 있는 두 메서드는 불가능하고 두번째 예시에 있는 get 메서드는 어째서 가능한지 궁금합니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
Jin Jung 댓글 1 좋아요 1 조회수 251

add(int index, Object newValue)에서 루프 조건질문

미해결

김영한의 실전 자바 - 중급 2편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] ```java public void add(Object e, int index) { if (size == elementData.length) { grow(); } for (int i = elementData.length - 1; i > index; i--) { elementData[i] = elementData[i - 1]; } elementData[index] = e; size++; } ``` for문 조건에서 for (int i = elementData.length - 1; i > index; i--) i의 초기값을 배열의 길이로 주는 것보다는 현재 배열에 담고 있는 요소의 수인 (size-1)변수로 주는 것이 루프문의 범위를 줄이고 정말 미세한차이겠지만 조금 더 효율적이라고 생각하는데 혹시 (size-1)변수로 반복문 초기값을 설정했을 때 문제될 점이 있을까요??

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
이건우 댓글 2 좋아요 0 조회수 312

섹션 10. 빈 스코프 질문

해결됨

스프링 핵심 원리 - 기본편

public class PrototypeTest { @Test void PrototypeBeanTest() { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(PrototypeBean.class); System.out.println("find PrototypeBean1"); PrototypeBean prototypeBean1 = ac.getBean(PrototypeBean.class); System.out.println("find PrototypeBean2"); PrototypeBean prototypeBean2 = ac.getBean(PrototypeBean.class); System.out.println("prototypeBean1 = " + prototypeBean1); System.out.println("prototypeBean2 = " + prototypeBean2); assertThat(prototypeBean1).isNotSameAs(prototypeBean2); } static class PrototypeBean { @PostConstruct public void init() { System.out.println("PrototypeBean.init"); } @PreDestroy public void destroy() { System.out.println("PrototypeBean.destroy"); } } } 결과 prototypeBean1 = hello.core.scope.PrototypeTest$PrototypeBean@29caf222 prototypeBean2 = hello.core.scope.PrototypeTest$PrototypeBean@29caf222 강의에서 프로토타입 스코프를 코드로 작성하고 실행하는 도중 깜빡하고 스코프 애노테이션을 넣는 걸 깜빡했습니다. 그런데 prototypeBean1 과 prototypeBean2 의 참조값이 같게 나왔습니다. @Configuration을 적지 않았는데 왜 싱글톤이 적용이 된 건지 잘 이해가 가지 않습니다...

  • spring
  • 객체지향
권정익 댓글 1 좋아요 0 조회수 173

Deque에서 Queue인지 Stack인지는 데이터를 추가 할 때 결정되는건가요?

미해결

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 예제를 따라하면서 호기심에 deque.push(1); deque.push(2); deque.push(3); System.out.println("deque.pop() = " + deque.poll()); System.out.println("deque.pop() = " + deque.poll()); System.out.println("deque.pop() = " + deque.poll()); pop을 -> poll로 바꿔봤는데 결과값이 똑같이 나오고 그 반대로 offer / pop 으로 해도 마찬가지더라구요! Deque<Integer> deque = new ArrayDeque<>(); 혹시 이 Deque가 queue / stack 둘 다 지원하기 때문에 데이터를 추가 할 때 자료구조가 결정되는게 맞는건가요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
백엔드마술사 댓글 2 좋아요 0 조회수 301

섹션 8. 빈 생명주기 콜백

해결됨

스프링 핵심 원리 - 기본편

@Bean에 초기화 소멸 메서드 등록할 때 질문입니다! public class NetworkClient { private String url; public NetworkClient() { System.out.println("생성자 호출, url = " + url); } public void setUrl(String url) { this.url = url; } //서비스 시작시 호출 public void connect() { System.out.println("connect: " + url); } public void call(String message) { System.out.println("call: " + url + " message = " + message); } //서비스 종료시 호출 public void disConnect() { System.out.println("close + " + url); } public void init() { System.out.println("NetworkClient.init"); connect(); call("초기화 연결 메시지"); } public void close() { System.out.println("NetworkClient.close"); disConnect(); } @Configuration static class LifeCycleConfig { @Bean(initMethod = "init", destroyMethod = "close") public NetworkClient networkClient() { NetworkClient networkClient = new NetworkClient(); networkClient.setUrl("http://hello-spring.dev"); return networkClient; } } 결과 생성자 호출, url = null NetworkClient.init connect: http://hello-spring.dev call: http://hello-spring.dev message = 초기화 연결 메시지 13:33:10.029 [main] DEBUG org.springframework.context.annotation.AnnotationConfigApplicationContext - Closing NetworkClient.close close + http://hello-spring.dev 스프링 빈에 하기위해 networkClient객체가 생성되고 의존관계 주입까지 끝난 다음에 networkClient.setUrl(" http://hello-spring.dev "); 로 url을 초기화하기 전에 init() 메서드가 실행되는 걸로 이해를 했는데, 그럼 init() 메서드가 connect 호출 할 때 url은 여전히 null일테니 url의 초기화가 먼저 일어나야 합니다. 그런데 초기화 콜백은 스프링 빈이 객체를 생성하고 의존관계 주입이 완료된 후, 초기화가 되기 전에 일어나는 거 아닌가요.. 이럼 앞뒤가 안 맞는데 제가 놓치고있는 부분을 알려주시면 감사하겠습니다.

  • spring
  • 객체지향
권정익 댓글 1 좋아요 0 조회수 157

함수와 메서드

해결됨

김영한의 실전 자바 - 기본편

안녕하세요. 수업 정말 잘 듣고 있습니다. 입문 편이랑 기본 편 복습 중에 질문 하나 드립니다. 인터넷에서 검색해 보니 static이 붙은 정적 메서드, 클래스 메서드를 함수라고 부르기도 하고 static이 붙지 않은 인스턴스 메서드를 메서드라고라고 부르기도 한다는데요. 위와 같이 구분해서 부르는 건 맞는 건가요?

  • java
  • 객체지향
sparkyoon 댓글 1 좋아요 0 조회수 211

메서드 영역의 메서드 질문

미해결

김영한의 실전 자바 - 기본편

안녕하세요. 메서드 관련 질문입니다. 메서드는 공통된 기능이기 때문에 인스턴스 변수처럼 내부에 가지고 있지는 않고 메서드 영역에 있는 걸 필요할 때(호출할 때) 가져와서 쓴다. 이것과 관련하여 질문 3가지 문의 드립니다. 1. 각각의 객체에는 필드값만 가지고 있고 메서드는 아예 가지고 있지 않은거죠 ? 2. 컴파일이 될 때 메서드 영역 > 클래스 영역 이 부분에 클래스의 관련 코드들이 다 들어가 있는 걸로 이해했는데 그러면 다음의 두 경우는 어떻게 이해하면 될까요 ? (두 경우 다 추상 클래스, 인터페이스에는 메서드의 바디가 작성되어 있지 않고 나중에 작성되는 경우) -> 메서드 영역의 클래스 영역에 처음에는 바디가 없으니 관련 정보가 전혀 없을 거 같은데 이와 같이 나중에 오버라이딩을 해주었을 때 메서드 영역의 클래스 영역에서 어떻게 되는지 궁금합니다. 새로운 클래스 영역에 메서드로 정의되는 부분이 아니라 기존에 클래스 영역에서 정의가 되어야 하는데 문제는 클래스 영역의 기존 메서드를 수정하자니 다음의 두 케이스는 해당 객체를 생성할 때에만 적용되는 일회성 코드라 ... 2.1 AbstractAnimal은 추상클래스로 sound()가 추상 메서드입니다. AbstractAnimal animal = new AbstractAnimal() { @Override public void sound() { System.out.println("test"); } }; 2.2 InterfaceAnimal interface 입니다. InterfaceAnimal interfaceAnimal = new InterfaceAnimal() { @Override public void sound() { System.out.println("test"); } @Override public void move() { System.out.println("test"); } };

  • java
  • 객체지향
인프린 댓글 1 좋아요 0 조회수 226

타입과 참조값

미해결

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강사님 다형성 참조를 보다가 질문합니다 Parent poly = new Child(); 부모 타입의 변수는 부모의 데이터를 사용 할 수 있으므로 자식 타입을 대입 할 수 있고 Child poly = new Parent(); 자식 타입의 변수는 자식 데이터를 사용 할 수 있지만 부모 타입이 범위가 더 커 자식이 담을 수 없는게 맞을까요?

  • java
  • 객체지향
딩띵 댓글 1 좋아요 0 조회수 222

connect()에 url이 null이 안나오는이유

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 안녕하세요 이 강의와 이전강의를 돌려가면서보는중인데도 햇갈리는게있어서 제가 생각하는게 맞는지 궁금해서 질문드립니다. 1. 바로이전강의내용에서는 connect() 와 call()를 afterPropertiesSet()에 넣지않은상태에서 코드를 실행하면 url이 null이 뜨는상태였습니다. 그 이유가 그러면 connect() 와 call()함수가 빈 라이프사이클인 "스프링 빈 생성" 중 NetworkClient 생성자안에 있어서 url을 set하기 전 단계에 실행되서 null이 뜨는거고, null이 안뜨고 url이 제대로 나오는 상황은 빈이 완벽하게 생성이 된 이후에 connect() call()이 실행되서 인가요? 제 질문이 잘 전달이된건지 잘 모르겠네요. 빈생성이 되기 전에 connect한거랑 빈생성이완벽하게된후(url도 set된상황) 그 차이인가요? 2. 그리고 바로전강의에서 상태출력을 빈생성과정에 출력하신거라 null이 나오는거지 결국 setUrl은 결국 실행되서 url의 최후 상태는 null이 아니지않나요? 그냥 라이프사이클에 중점을두시는 강의인거맞나요?

  • spring
  • 객체지향
georgek1205 댓글 1 좋아요 0 조회수 289

오타 확인 부탁드립니다.

해결됨

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

while문 -> for문 MoveRateEx -> MovieRateEx 항상 좋은 강의 감사드립니다. 건강 유의하시고 행복한 하루 보내셨으면 좋겠습니다.

  • java
  • 객체지향
chic0813 댓글 1 좋아요 0 조회수 178

섹션 7. 조회한 Bean 모두 필요 Map, List

해결됨

스프링 핵심 원리 - 기본편

public class AllBeanTest { @Test void findAllBean() { ApplicationContext ac = new AnnotationConfigApplicationContext(DiscountPolicy.class); } static class DiscountPolicy { private final Map<String, DiscountPolicy> policyMap; private final List<DiscountPolicy> policies; @Autowired public DiscountPolicy(Map<String, DiscountPolicy> policyMap, List<DiscountPolicy> policies) { this.policyMap = policyMap; this.policies = policies; System.out.println("policyMap = " + policyMap); System.out.println("policies = " + policies); } } 테스트를 실행하면 policyMap = {} policies = [] 출력이 됩니다. 실행되면서 new AnnotationConfigApplicationContext(DiscountPolicy.class);의 스프링 컨테이너가 DiscountPolicy를 빈으로 등록하는데, DiscountPolicy는 @Autowired로 생성자 주입을 받습니다. 그런데 스프링 컨테이너의 스프링 빈에는 Map<String, DiscountPolicy> policyMap List<DiscountPolicy> policies policyMap와 policies는 생성된 적이 없어서 등록된 빈이 없을테고, final이 붙은 필드에는 초기화가 되지않아서 오류가 나야하지 않나요? 어떻게 policyMap = {} policies = [] 처럼 객체가 들어가 있을 수가 있나요??

  • spring
  • 객체지향
권정익 댓글 1 좋아요 0 조회수 185

참조형 return 관련 질문

미해결

김영한의 실전 자바 - 중급 2편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) y 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) y 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) y [질문 내용] MyLinkedListV2 클래스의 remove 함수에서 Object removedItem = removeNode.item; ... removeNode.item = null; return removedItem; 위와 같은 방식으로 item을 반환하기 전에 null로 초기화를 해주고 있습니다. removedItem에 참조형인 removeNode.item을 할당하면 참조값이 복사되어 값이 null인 참조값을 반환할 것이라고 생각했는데, 실제 코드를 실행시켜보니 삭제된 노드의 item 값이 정상적으로 반환되는 것을 확인했습니다. Object removedItem = removeNode.item을 실행하면 참조값이 아니라 데이터가 들어가게 되는 건가요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
disorder422 댓글 1 좋아요 0 조회수 278

오버라이딩 질문

미해결

김영한의 실전 자바 - 기본편

안녕하세요. 아래 작성해주신 메서드 오버라이딩 관련한 설명 확인했습니다. 한 가지 궁금한 건 답변에서처럼 실제 런타임시에는 변수의 타입이 아닌 인스턴스의 타입을 우선적으로 본다고 한다면, method 오버라이딩은 자식 타입의 method(오버라이딩된)을 보는 게 맞는데 필드값은요 ? 위에 작성해주신 내용이 필드에는 해당이 안 되고 메서드에만 해당이 되는 내용인가요 ?

  • java
  • 객체지향
인프린 댓글 2 좋아요 0 조회수 386

섹션 12. 다형성과 설계 예제 관련 질문

해결됨

김영한의 실전 자바 - 기본편

안녕하세요. <다형성과 설계-문제와 풀이> 강의를 듣는 중에 의문이 생겨 문의드립니다. 수업 내용에 따라 Sender 클래스는 인터페이스로 작성된 상태입니다. 사진과 같이 "Sender[] senders = "로 배열을 생성하여도, 배열 안의 값들은 Sender형이 아닌 각각 EmailSender, SmsSender, FaceBookSender형으로 생성이 되는 건가요? 만약 Sender형으로 인스턴스가 생성이 된다면, 인터페이스는 인스턴스를 생성할 수 없기 때문에 NullPointerException이 발생해야 할 것 같아서요. 답변 부탁드립니다. 감사합니다.

  • java
  • 객체지향
S.F. 댓글 1 좋아요 0 조회수 161

인터페이스-다중 구현 질문입니다.

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 인터페이스-다중구현 강의 자료 마지막 부분에 b.methodCommon() 호출하면 먼저 x001 Child 인스턴스를 찾는다. 라는 부분이 있습니다. x001이 아니라 혹시 x002가 아닌지요? 위에 있는 그림하고 맞지 않는 것 같아서요.

  • java
  • 객체지향
pjm927 댓글 2 좋아요 0 조회수 272

섹션 6. 컴포넌트 스캔

해결됨

스프링 핵심 원리 - 기본편

1, 예제를 유지하기 위해서 AutoAppConfig 클래스에 @ComponentScan을 입력하시고, excludeFilters를 이용해서 @Configuration이 붙은 클래스들은 컴포넌트 스캔대상에서 제외하셨습니다! 그런데 AutoAppConfig에도 @Configuration이 붙어있는데 ApplicationConfig에 구성 정보로 AutoAppConfig를 넘기면 AutoAppConfig에도 @Configuration이 붙어있는데 @ComponentScan이 동작을 어떻게 하는지 조금 헷갈립니다ㅠㅠ 2, 컴포넌트 스캔을 사용하려면 먼저 @ComponentScan 을 설정 정보에 붙여주면 된다. excludeFilters 를 이용해서 설정정보는 컴포넌트 스캔 대상에서 제외했다. 여기서 설정정보라는게 뭘 의미하는 건가요??

  • spring
  • 객체지향
권정익 댓글 1 좋아요 0 조회수 152

제네릭 메서드 사용 질문

미해결

김영한의 실전 자바 - 중급 2편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 제네릭을 사용할 때 궁금한 점이 생겨서 질문드립니다. Integer i = 10; Object object = GenericMethod.objMethod(i); // 타입 인자(Type Argument) 명시적 전달 System.out.println("명시적 타입 인자 전달"); Integer result = GenericMethod.<Integer>genericMethod(i); 현재는 Integer i = 10; 으로 래퍼클래스를 사용하고 있는데, 만약 int i = 10; 과 같이 기본형을 전달하면 '오토 박싱'이 되어서 Integer 객체로 변환되어서 메서드에 전달되는 걸로 이해하면 될까요?

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
superLight 댓글 1 좋아요 0 조회수 300

자바가 제공하는 Set 질문

해결됨

김영한의 실전 자바 - 중급 2편

안녕하세요 항상 최고의 강의를 제공해주셔서 감사드립니다. 강의를 듣던 도중 질문이 생겨 글을 남깁니다. 섹션 8번 컬렉션 프레임워크 강의의 자바가 제공하는 Set은 출력 하였을 경우 영한님과 함께 만들었던 MyHashSet과 달리 비어있는 인덱스는 출력이 되지 않던데 이 또한 최적화로 인해 출력이 안되는 것인지 궁금합니다. 만약 그렇다고 하면 initialCapacity의 값을 입력하거나, 데이터의 양을 배열의 크기의 75% 이상으로 늘렸을 경우 rehashing 되는지 육안으로 확인할 방법이 없는지 또한 궁금합니다. (rehashing 후 커진 배열에 다시 맞추어 데이터의 순서가 변경되는 것은 확인하였는데 단순히 배열의 크기가 커진 것을 확인할 방법이 궁금합니다.)

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
mbk1457 댓글 1 좋아요 0 조회수 219

인기 태그

인프런 TOP Writers

주간 인기글