Java의 HashMap

오늘은 java의 hashMap에 대해서 알아보자. java에서 자주 사용되는 HashMap은 아주 오래전부터 있던 API이다. 자바8까지 오면서 많은 변화가 있었겠지만 필자는 java8 기준으로 살펴보도록 한다. 참고로 이 글은 http://d2.naver.com/helloworld/831311 참고하면서 정리하는 의미로 남기는 것이다. 수학적인 의미 map map (mapping)은 원래 수학 함수에서 대응 관계를 지칭하는 용어이다. HashMap은 키 집합인 정의역과 값 집합인 공역의 대응에 해시 함수를 이용한다. 위의 링크의 (그림 1) HashMap과 Hashcode HashMap은 빠르다. 내부적으로 배열은 사용해 빠른 속도를 지니고 있다… Read More

java는 call by value? call by reference?

오늘도 역시 java에 대해서 이야기 해볼려고 한다. java로 먹고 살아야 하니.. call by value와 call by reference 오늘 내용은 제목에도 있다시피 java는 call by value?, call by reference? 를 알아볼 예정이다. 그 전에 아주 간단하게 call by value와 call by reference에 대해서 살짝 살펴보자. 보통 c 보다 자바를 먼저 공부한 개발자는 들어본 개발자도 있을 것이고 듣지 못한 개발자도 있을 수 있다. 왜냐하면 책에서 딱히 다루지 않기 때문이다. 필자도 자바책에서는 거의.. Read More

java의 String 얼마나 알고 쓰나요?

오늘은 자바의 String에 대해서 알아보자. 딱히 많이 중요한 이야기는 아니니 참고 정도만 하면 되겠다. String 과 new String() 자바에서는 두가지 방법으로 String을 선언할 수 있다. 아래와 같이 말이다. String a = “hello”; String b = new String(“hello”); 뭐 이건 자바의 왕기초이니 뭐 설명할 것도 없지만.. 한 가지는 String literal을 사용해서 선언가능하고 다른 한 가지는 new 키워드를 사용해서 생성할 수 있다. 그럼 두개의 차이점은 뭘까? 일단 가장 중요한 것은 메모리 구조가.. Read More