목록Programming Language (4)
05AM
`Comparable`과 `Comparator`는 객체의 정렬을 위해 사용되는 인터페이스입니다. 두 인터페이스는 서로 다른 방식으로 정렬 기준을 정의합니다.🔷 `Comparable`Comparable 인터페이스는 객체 자체에 기본 정렬 기준을 정의하고자 할 때 사용됩니다. 이 인터페이스를 구현하는 클래스는 자연 정렬(natural ordering)을 가지게 됩니다. 예를 들어, 숫자는 오름차순, 문자열은 사전순 등이 있습니다. 사용 상황:클래스의 기본 정렬 순서를 정의하고 싶을 때객체의 기본 정렬 기준이 하나만 있을 때Comparable 인터페이스는 `compareTo` 메서드를 하나 가지고 있습니다.➡️ 구조public class ClassName implements Comparable { @O..
🔷 `collect()`Java Stream API의 메서드로, 스트림의 요소를 다양한 컬렉션으로 수집하거나 특정한 방식으로 집계하는데 사용된다.`collect` 메서드는 주로 Collector를 인수로 받아 스트림의 요소를 수집한다.// List로 수집List wordList = words.stream().collect(Collectors.toList());// Set으로 수집Set wordSet = words.stream().collect(Collectors.toSet());Stream (Java SE 11 & JDK 11 ) (oracle.com)🔷 `Collectors`다양한 유틸리티 메서드를 제공하는 클래스로, 주로 스트림의 요소를 컬렉션으로 수집하거나 특정한 집계 연산을 수행할 때 사용된다..
☀️ 배경 코딩 테스트를 준비하며 java의 여러 메소드를 익히던 중 궁금한 점이 생겼다. `java.lang.String` 자체의 메소드들도 다양하게 존재하는데 `java.util.StringBuilder`나 `java.util.StringBuffer`를 사용하는 이유가 무엇일까? 아래에서 그 이유를 알아보자. ☀️ 불변 문자열 클래스 String `String` 클래스는 불변한 문자열을 나타내며, 한 번 생성되면 내용을 변경할 수 없다. `String` 클래스는 내부적으로 문자열을 문자 배열(`char[]`)에 저장한다. 문자 배열은 변경할 수 있는 가변 객체가 아니기 때문에 문자열 내용을 수정하는 것이 불가능하다. 예를 들어 'Hello'라는 문자열을 생성하면 다음과 같이 문자 배열에 저장된다. [..

this : 참조 변수 인스턴스가 바로 자기 자신을 참조하는데 사용하는 변수 해당 인스턴스의 주소를 가리키고 있다. 예시로, 생성자의 매개변수 이름과 인스턴스 변수의 이름이 같을 경우에는 인스턴스 변수 앞에 this 키워드를 붙여 구분해만 한다. Class Car { private double speed; private String size; private String color; public Car(double speed, String size, String color) { this.speed = speed; this.size = size; this.color = color; } } java에서는 this 참조 변수를 사용하여 인스턴스 변수에 접근할 수 있다. 이러한 this 참조 변수를 사용할 수 있..