개발자의 삶/Java

개발자의 삶/Java

[Java] Comparable vs Comparator

들어가며 알고리즘 문제를 풀다가 문득 아무생각 없이 쓰던 Comparable 과 Comparator 에 대해서 찾아보던중 너무 잘 설명해주신 글을 찾았다. https://st-lab.tistory.com/243 자바 [JAVA] - Comparable 과 Comparator의 이해 아마 이 글을 찾아 오신 분들 대개는 Comparable과 Comparator의 차이가 무엇인지 모르거나 궁금해서 찾아오셨을 것이다. 사실 알고보면 두 개는 그렇게 어렵지 않으나 아무래도 자바를 학습하면서 객 st-lab.tistory.com 내 포스팅은 잊지 않기 위해 요약 및 재포스팅 할 뿐 자세한 설명은 위 링크를 보고 이해하는 편이 훨씬 좋을 것이다. Comparable? Comparator? 기본적으로 Comparab..

개발자의 삶/Java

[Java] 메소드 참조(Method References)에 대하여 ( 이중콜론 :: )

들어가며 이전 글에서는 람다식과 스트림에 대하여 알아봤다. [Java] 람다식(Lambda Expression)과 스트림(Stream)에 대하여 - (1) 들어가며 언젠가 모 기업에서 면접을 볼때 이런 질문을 받은 적이 있다. 자바 8 이전과 이후에 달라진 점에 대해서 알고 있나요? 나는 대답을 못했었던 기억이 있다. 그 기억을 더듬어 정리하는 kedric-me.tistory.com 예시 코드를 들던 중, 아무렇지 않게 작성하고 지나갔던 메소드 참조에 대해서 알아볼까 한다. 메소드 참조(Method References) 란 무엇인가 You use lambda expressions to create anonymous methods. Sometimes, however, a lambda expression d..

개발자의 삶/Java

[Java] 람다식(Lambda Expression)과 스트림(Stream)에 대하여 - (2)

들어가며 이전 글에서 람다식에 대해 알아보았다. [Java] 람다식(Lambda Expression)과 스트림(Stream)에 대하여 - (1) 들어가며 언젠가 모 기업에서 면접을 볼때 이런 질문을 받은 적이 있다. 자바 8 이전과 이후에 달라진 점에 대해서 알고 있나요? 나는 대답을 못했었던 기억이 있다. 그 기억을 더듬어 정리하는 kedric-me.tistory.com 이번 글에서는 람다식을 쓰는 핵심인 스트림에 대해 알아보려고 한다. 사실 예전에 이미 람다식과 스트림에 대한 글을 남긴적이 있었다. 다만 그때는 겉핥기 식으로 당장에 필요한 스트림 메소드만 살펴봤다면 이번에는 스트림에 대해 나름 깊이 있게 알아보고자 한다. - 스트림(Stream) '스트림' 이란, 데이터의 집합(배열이나 콜렉션 등)에..

개발자의 삶/Java

[Java] 람다식(Lambda Expression)과 스트림(Stream)에 대하여 - (1)

들어가며 언젠가 모 기업에서 면접을 볼때 이런 질문을 받은 적이 있다. 자바 8 이전과 이후에 달라진 점에 대해서 알고 있나요? 나는 대답을 못했었던 기억이 있다. 그 기억을 더듬어 정리하는 시간을 가져보려고 한다. 각 버전마다 변경점이 있지만 자바 8 버전에서의 큰 변경점이라고 한다면 람다식(Lambda Expression)과 스트림(Stream), 옵셔널(Optional) 등을 들 수 있겠다. - 람다식(Lambda Expression) 람다식은 자바 8에서 도입되었다. 람다식이란 파라미터를 받아서 값을 반환하는 짧은 코드 블록을 말한다. 람다식은 메소드와 유사하지만 이름이 필요하지 않고, 본문 내에서 바로 구현이 가능하다. - W3Schools 개념적으로는 무슨말인지 잘 이해가 안간다. 간단한 코드..

개발자의 삶/Java

[Java] 오토박싱(Autoboxing), 언박싱(unboxing)

이전 글에서 Primitive type 과 Reference type에 대해서 공부했다. 이번에는 오토박싱(Autoboxing)과 언박싱(Unboxing)에 대해 알아보자 - Autoboxing and Unboxing Oracle Java Doc에서는 이렇게 말하고있다. Autoboxing is the automatic conversion that the Java compiler makes between the primitive types and their corresponding object wrapper classes. For example, converting an int to an Integer, a double to a Double, and so on. If the conversion goes..

개발자의 삶/Java

[Java] 원시 타입(Primitive type), 참조 타입(Reference type), 래퍼클래스(Wrapper Class)

- Java의 자료형 자바의 자료형에는 원시 타입(Primitive type), 참조 타입(Reference type) 두가지 타입이 있다. 1. 원시타입 (Primitive type) Primitive type은 stack 메모리 공간에 값 자체가 저장되며 boolean, int, long, char 등이 있다. 2. 참조타입 (Reference type) Reference type은 heap 메모리 공간에 저장되며 해당 객체들의 주소를 stack 메모리 공간에 저장한다. 기본형 이외 대부분의 타입들을 말하며, 배열, 클래스 인터페이스 등이 있다. int a = 1; // stack 에 저장 Integer b = new Integer(); // heap에 저장하고 주소값을 참조 3. 래퍼 클래스 (Wr..

개발자의 삶/Java

[JAVA] 람다식 (map, filter, reduce, collect)

이 글은 예전에 작성된 글이다. 람다식과 스트림에 대한 자세한 내용은 새롭게 포스팅하였다. [Java] 람다식(Lambda Expression)과 스트림(Stream)에 대하여 - (1) 들어가며 언젠가 모 기업에서 면접을 볼때 이런 질문을 받은 적이 있다. 자바 8 이전과 이후에 달라진 점에 대해서 알고 있나요? 나는 대답을 못했었던 기억이 있다. 그 기억을 더듬어 정리하는 kedric-me.tistory.com - 람다식 ?? 람다식, 또는 람다 함수는 프로그래밍 언어에서 사용되는 개념으로 익명 함수(匿名函數, Anonymous functions)를 지칭하는 용어이다. JAVA에서 람다식은 8 버전부터 지원한다. 뭔가 말이 어렵다. 코드로 간단히 이해해 보자. 아래는 일반적인 더하기 메소드다. int..

Kedric
'개발자의 삶/Java' 카테고리의 글 목록