[JAVA] Comparator와 Comparable 인터페이스
·
Java
Comparator와 Comparable 인터페이스 객체 정렬에 필요한 메서드를 정의한 인터페이스, 정렬 기준을 제공하는 것이 목적, 객체를 비교할 수 있도록 한다. 기본형 (Primitive Type)은 연산자를 통해 쉽게 비교가 가능하다. 하지만 객체를 비교하려 할때는 무엇을 기준으로 비교해야 하는지 명확하지 않다. 사용자가 기준을 정하지 않는 이상 어떤 객체가 높은 우선순위인지 판단할 수 없다는 것이다. 이런 문제점을 해결하기 위해 기준을 정한는데 사용되는 인터페이스가 Comparable/Comparator이다. Comparable : 기본 정렬기준을 구현하는데 사용. Comparator : 기본 정렬기준 외에 다른 기준으로 정렬하고자 할 때 사용 Comparable 객체의 기본 정렬기준을 구현하는..
[JAVA] 컬렉션 프레임웍(collections framework)와 핵심 인터페이스
·
Java
자료구조(Data Structure) 자료구조는 개발자가 데이터를 효율적으로 사용할 수 있도록 정리하는 방법을 말한다. 각각의 자료구조는 장단점이 있어 어떤 자료구조를 사용하는 것이 최선인지는 해결하고자 하는 문제의 종류와 어떤 부분을 우선적으로 최적화할지에 따라 달라질 수 있다. 결국 알고리즘을 작성하고 그에 맞는 자료구조를 선택하는 것이 중요하므로 자료구조를 충분히 이해하지 못한담면 좋은 프로그램을 작성할 수 없다. 자료구조의 분류 추상 데이터 타입은 자료구조를 설명하는 데이터 타입을 말하며, 자료구조는 추상 데이터 타입을 실제로 구현한 결과를 말한다. 자료구조는 여러 속성을 기반으로 분류할 수 있는데 대표적으로 많이 분류하는 방법으로는 선형 자료구조(Linear Data Structure)과 비선형..
[JAVA] List 인터페이스
·
Java
List인터페이스 List는 순서가 있고 중복을 허용하는 데이터의 집합에 속하며(선형 자료구조), 같은 선형 자료구조에 속하는 배열과 달리 동적 자료구조로 정적으로 크기를 할당하여 사용하지 않고 List 인터페이스를 구현한 컬렉션 클레스는 동적으로 크기를 할당하여 사용한다. List인터페이스를 구현한 대표적인 컬렉션 클래스 ArrayList LinkedList Vector * Vector와 ArrayList는 비슷하지만 Vector을 계선한 것이 ArrayList로 ArrayList와 LinkedList가 대표적인 클래스이다. Stack List 인터페이스의 메서드 List는 Collection의 자손이기 때문에 Collection인터페이스의 메서드를 포함하고 있다. 메서드 설명 void add (int..
[JAVA] 형식화 클래스
·
Java
형식화 클래스는 java.text 패키지의 DecimalFormat, SimpleDateFormat이 있다. 숫자와 날짜를 원하는 형식으로 쉽게 출력을 할 수 있도록 바꿔준다. DecimalFormat 숫자를 형식화할 때 사용(숫자 => 형식 문자열) double number = 1234567.89;// 10진수 DecimalFormat df = new DecimalFormat("#.#E0"); // 지수를 사용한 형식 문자열을 지정 String result = df.format(number);// 10진수를 지정한 형식의 문자열로 변환해준다. // 12.E6 기호 의미 패턴 결과(1234567.89) 0 10진수(값이 없을 때는 0) 0 0.0 0000000000.0000 12345678 1234567..
[JAVA] 유용한 클래스(Math클래스, 래퍼클래스, Number클래스)
·
Java
Math 클래스 수학 관련 static 메서드의 집합, 인스턴스 변수(iv)가 존재 하지 않고 메서드만 존재하기 때문에 전부 static 메서드로 이루어져 있다. https://www.youtube.com/watch?v=tBUm6yj4cKQ&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=112&t=1s 래퍼(wrapper) 클래스 기본형 값을 감싸는 클래스, 8개의 기본형을 객체로 다뤄야할 때 사용하는 클래스. public final class Integer extends Number implements Comparable { ... private int value; ... } 자바는 객체지향언어이기 때문에 모든것을 객체로 다룬다. 객체가 아닌 기본형을 객체로 다뤄야 ..
[JAVA] 날짜와 시간 그리고 Calendar 클래스
·
Java
java.util.Date 날짜와 시간을 다룰 목적으로 만들어진 클래스(JDK 1.0 1995년 말부터 사용), 자바가 처음 만들어질때 만들어진 클래스로 급하게 만들어져 날짜와 시간을 다루는데 부족한 부분이 있어 Date의 메서드는 거의 deprecated(디프리케이티드, 앞으로 사용하지 말라는 뜻) 되었지만 여전히 쓰이고 있다. java.util.Calendar Date클래스를 개선한 새로운 클래스(JDK1.1 1997년 쯤). 여전히 단점이 존재 http://www.tcpschool.com/java/java_api_calendar 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com java.time패키지(자바의 정석 ..
PP_D
'Java' 카테고리의 글 목록 (4 Page)