HashMap
-
지네릭스(Generics)와 Iterator & HashMap백엔드/자바 2021. 5. 22. 18:10
지네릭스와 Iterator 위와 같은 Student라는 일반 클래스가 있다고 가정해보자. 그리고 Student 클래스의 객체를 리스트에 저장한 다음 Iterator()메서드를 이용해서 Iterator 객체를 호출해서 리스트에 저장된 Student 객체의 이름을 출력하는 코드가 있다고 가정하자. 이때 Iterator객체의 next() 메서드는 Object 자료 타입으로 객체를 반환한다. 그렇기 때문에 Student의 변수인 s에 객체를 저장할 때 별도로 Student로 캐스팅을 한 것이다. 그런데 Iterator 객체를 호출할 때 지네릭스를 쓴다면 코드를 간결하게 쓸 수 있다. 위와 같이 미리 Iterator 객체를 호출할 때 지네릭스를 써서 이용할 객체를 미리 써두면 캐스팅이 필요없다. 그래서 훨씬 간결..
-
컬렉션 - MAP 출력 방법백엔드/자바 2020. 8. 17. 02:25
컬렉션에서 List와 Set은 데이터를 읽어오기가 간편하다. 반면 Map의 경우 데이터가 키(key), 값(value)로 나뉘다보니 상대적으로 읽기가 까다롭다. 그래서 이번 포스트에선 Map 데이터를 읽어오는 방법에 대해 정리하고자 한다. forEach + keySet( ) 이용하기 keySet( ) 함수를 이용해서 key만 따로 Set 형태로 저장한다. 그 뒤 for-each 문을 이용해서 추출한 key를 get( ) 메서드를 써서 값(value)을 얻어내면 된다. public static void main(String[] args) { Map player = new TreeMap(); player.put("야구", "류현진"); player.put("축구", "손흥민"); player.put("피겨"..
-
컬렉션 Map - HashMap백엔드/자바 2020. 8. 17. 00:58
HashMap이란? Map 인터페이스를 구현한 클래스로 Map의 특징을 그대로 갖는다. Map은 키(key)와 값(value) 한쌍으로 구성된 자료구조를 말한다. HashMap은 해싱 기법을 사용해 Map의 형태로 자료를 저장하게 된다. 이때 Map의 형태로 저장할 때 key객체와 value객체를 멤버로 가진 Entry 객체를 이용한다. 간단히 저장되는 방식을 그림을 보자면 아래와 같다. 데이터를 Map의 형태로 저장하면 위 그림처럼 키, 값으로 나눠진다. (HashMap 뿐 아니라 TreeMap도 위와 같은 방식으로 객체에 데이터를 저장한다.) 이때 알아둬야 할 것은 값(value)는 중복되어도 상관없지만, 키(key)는 중복되선 안된다. 만약 키가 중복될 경우에는 기존에 있던 키의 값은 새로 입력한 ..