Language 2

왜 'a'는 String type이 될 수 없을까? feat. SCP

char을 큰 따옴표로 묶거나 String을 작은 따옴표로 묶으면 type 에러가 발생합니다. char c = "a"; // errorString s = 'a'; // error 🤓 왜 'a'는 String type으로 쳐주지 않는 걸까요?왜 리터럴 타입으로 받을 때 따옴표로 둘을 구분해야하는지 의문을 가져보신 분들이 있을 것 같습니다.해당 글에서는 둘을 구분해야하는 이유를 알아보고, String의 동작 방식을 정리해보려고 합니다. feat. char vs String 'a'와 "a"가 달라야 하는 이유char은 Primitive 타입이고 String은 Reference 타입입니다.Primitive 타입은 기본 데이터 타입으로 값을 직접 저장합니다. 반면 Reference 타입은 이름과 같이 메모리 주..

Language 2024.10.27

스트림은 느긋하고 싶다

Stream API는 2014년 Java8과 함께 혜성처럼 등장했습니다. ☄️그리고 현재까지 자바 개발자들의 사랑을 듬뿍 받고 있죠. 스트림은 병렬처리, 무한 데이터 등 많은 것을 지원해줍니다. 하지만 누군가가 그 중 꼭 알아야 할 스트림의 특징이 뭐야?라고 묻는다면 전 딱 이렇게 말할 것 같습니다. 스트림은 느긋하다고. Streams are lazy. computation on the source data is only performed when the terminal operation is initiated, and source elements are consumed only as needed. purpose지연 연산의 특징을 알아보고 Stream의 동작 방식에 대해 이해합니다.  어느날, 개발자 A..

Language 2024.10.13