본문 바로가기

JAVA5

Comparable과 Comparator Comparable과 Comparator의 차이 둘 다 interface로 implements하여 사용한다. Comparable은 자체가 정렬가능 Comparator은 누군가를 정렬하는 것 Comparable int compareTo(T o) 을 재정의(overriding) 자기 자신과 매개변수 객체를 비교 :내가 사용하는(domain) 클래스에 implements하여 내가 사용하는 클래스와 파라미터로 받은 클래스를 비교한다. 객체 자기 자신에게 남과 비교할 수 있는 기준을 주는 것 클래스를 수정해야한다는 점 Comparator int compare(T o1, T o2) 을 재정의(overriding) 두 매개변수 객체를 비교 : 사용자 정의할 클래스(ex> MyComparator)에 implements.. 2024. 1. 23.
[JAVA] Stream과 Collection 시간 차이 [참고] 백준 1181번 : 단어 정렬 배열의 중복을 제거할 때 Collection이 빠를까 Stream()이 빠를까 궁금했다. - Hash 사용 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Comparator; import java.util.HashSet; public class P1181_단어정렬_hash { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStre.. 2024. 1. 18.
[JAVA] Stream을 이용하여 배열에서 중복된 값 제거하기 [참고] 백준 1181번 : 단어 정렬 String[]에서 중복된 값 제거하기 String[] array = Arrays.stream(arr).distinct().toArray(String[]::new); //value -> new String[value] == String[]::new 2024. 1. 18.
[JAVA] Arrays.sort(), Comparator 사용 / 두 가지 이상 기준으로 정렬 / 알파벳 순으로 정렬 [참고] 백준 1181번 : 단어 정렬 String[]에서 길이가 짧은 것부터 길이가 같으면 사전 순으로 정렬하기 //(String s1) -> s1.length() == String::length Arrays.sort(arr, Comparator.comparing(String::length).thenComparing(Comparator.naturalOrder())); (String s1) -> s1.length() => String::length 2024. 1. 18.
Overloading과 Overriding 오버로딩(Overloading)과 오버라이딩(Overriding)은 객체 지향 프로그래밍(OOP)에서 다형성(Polymorphism)을 구현하는 두 가지 중요한 개념이다. 오버로딩 (Overloading): 오버로딩은 같은 이름의 메서드나 생성자를 여러 개 정의하는 것 메서드나 생성자의 이름은 같지만, 매개변수의 타입, 개수, 또는 순서가 다르게 정의됨 오버로딩은 컴파일러가 메서드 호출 시에 적절한 메서드를 선택할 수 있도록 해주며, 코드의 가독성을 높이고 사용자에게 편의성을 제공함 class Calculator { int add(int a, int b) { return a + b; } double add(double a, double b) { return a + b; } } 오버라이딩 (Overridi.. 2024. 1. 17.
728x90
반응형