🧑‍💻 𝗣𝗿𝗼𝗴𝗿𝗮𝗺𝗺𝗶𝗻𝗴/Java

    Java 배열 to 집합/집합 to 배열, 리스트 to 집합/집합 to 리스트

    배열 to 집합 Arrays.asList(arr) import java.util.Arrays; import java.util.HashSet; import java.util.Set; public class Test { public static void main(String[] args) { Integer[] arr = { 1, 1, 2, 3 }; System.out.println(Arrays.toString(arr)); Set set = new HashSet(Arrays.asList(arr)); System.out.println(set); } } int 가 아니라 Integer 로 선언을 해야합니다. 그래야지 Arrays.asList() 를 사용할 수 있습니다. 집합 to 배열 set.toArray(new..

    Java 2진수, 8진수, 16진수, 10진수 변환

    2진수, 8진수, 16진수를 십진수로 변환하고, 또 반대로 변환하는 방법에 대해서 알아보도록 하겠습니다. 10진수 to 2진수, 8진수, 16진수 package problem; public class Test { public static void main(String[] args) { int a = 10; // 10진수 System.out.println(a); String a2 = Integer.toBinaryString(a); String a8 = Integer.toOctalString(a); String a16 = Integer.toHexString(a); System.out.println(a2); // 2진수로 변환 System.out.println(a8); // 8진수로 변환 System.out...

    Java HashSet 정렬하기

    HashSet 정렬하기 정렬 중복을 제거하기 위해서 Set 을 사용한 다음에 어떻게 정렬해야하나 고민이 들때가 있습니다. 이때 Set 을 List 로 변환하여 정렬을 한 다음 사용하면 됩니다. import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.List; public class Test { public static void main(String[] args) { HashSet set = new HashSet(); set.add(6); set.add(4); set.add(1); set.add(100); System.out.println(set); List tempSet = new..

    Java Lambda식 + Comparable 및 Comparator 인터페이스

    Lambda 개요 람다를 알기 이전에 우리는 Funtional Interface 에 대해서 짚고 넘어갈 필요가 있습니다. Funtional Interface 란 재정의될 추상 메서드가 딱 하나뿐인 인터페이스를 이릅니다. 이는 Single Abstract Method (SAM) 라기도 하며, 아주 구체적이고 전문적인 기능을 하는 메서드를 만들고 싶을 때 사용합니다. https://docs.oracle.com/javase/8/docs/api/ Java Platform SE 8 docs.oracle.com 우리가 알아볼 Comparable 인터페이스가 그런 형식입니다. 이게 근데 람다와 무슨 관련이 있을까요? 바로 sorting 을 하기 위해 Comparable 를 사용할 때, Comparator 인터페이스를..

    Java 객체지향 프로그래밍 - 다형성 (Polymorphism)

    Java 객체지향 프로그래밍 1. Java 객체지향 프로그래밍 - 상속 (Inheritance) 2. Java 객체지향 프로그래밍 - 메서드 오버라이딩 (Overriding) 3. Java 객체지향 프로그래밍 - 은닉화(Encapsulation) 와 접근 제한자 (modifier) 4. Java 객체지향 프로그래밍 - 싱글톤 패턴 (Singleton) 5. Java 객체지향 프로그래밍 - 다형성 (Polymorphism) 다형성 (Polymorphism) 개요 다형성이란 하나의 객체가 많은 타입을 가질 수 있는 것을 이릅니다. 상속 관계에 있을 시, 부모 클래스의 타입으로 자식 클래스 객체를 레퍼런스 할 수 있습니다. 여기서 레퍼런스란 이를 뜻합니다. Child c = new Child(); Parent..

    Java 객체지향 프로그래밍 - 싱글톤 패턴 (Singleton)

    1. Java 객체지향 프로그래밍 - 상속 (Inheritance) 2. Java 객체지향 프로그래밍 - 메서드 오버라이딩 (Overriding) 3. Java 객체지향 프로그래밍 - 은닉화(Encapsulation) 와 접근 제한자 (modifier) 4. Java 객체지향 프로그래밍 - 싱글톤 패턴 (Singleton) 5. Java 객체지향 프로그래밍 - 다형성 (Polymorphism) 싱글톤 패턴 (Singleton) 개요 싱글톤 패턴이란 객체의 인스턴스가 딱 하나만 생성되는 패턴을 의미합니다. 즉 해당 객체는 딱 하나의 인스턴스만 가지고 쓸 수 있는 것입니다. 따라서, 생성자를 은닉화 하고 인스턴스를 get 할 수 있는 getInstance() 메서드를 만들어서 사용합니다. 사용하는 이유 만약..