JAVA

23-02-01(2) JAVA (Calender클래스, DecimalFormat 클래스, SimpleDateFormat, 컬렉션 프레임워크, List 인터페이스)

모건이삼촌 2023. 2. 1. 17:23

복습

Wrapper 클래스 기본자료형의 객체화

시간에 반환타입이 long타입이 나오면 Epoch타임이라고 보면 된다.

 

1. Calendar 클래스

캘린더 클래스는 데이트클래스보다 향상된 기능이라고 보면된다.

캘린더 클래스는 추상클래스 이기에 캘린더는 new를 통해 객체생성을 할 수 없다.

그러므로 캘린더의 객체생성방법은 아래와 같다.

Calendar cal = Calendar.getInstance();

package chapter12;

import java.util.Calendar;
import java.util.GregorianCalendar;

public class CalendarEx {
	public static void main(String[] args) {		
//		Calendar calendar = new GregorianCalendar(); // 이런식으로 생성할수도 있는데 아래방법을 더 많이 사용
		Calendar calendar = Calendar.getInstance(); // 캘린더 객체 생성
//		System.out.println(calendar);
		
		// 필드에 부여된 상수값을 통해 확인가능
		System.out.println(calendar.get(Calendar.YEAR)); //연도 확인 
		calendar.set(calendar.YEAR, 2022); // 캘린더.YEAR을 2022년으로 변경
		System.out.println(calendar.get(Calendar.YEAR)); //연도 확인 
		System.out.println(calendar.get(Calendar.MONTH)); // 월 확인
		System.out.println(calendar.get(Calendar.DATE)); // 날짜 확인
		System.out.println(calendar.get(Calendar.DAY_OF_MONTH)); // 
	}

}

 

1) Calendar클래스의 주요 메서드

p.338표 삽입 필요

메서드 기능
after(Object when)  
before(Object when)  
   
   
   
   
   

calendar.roll : 월을 기준으로 했을때 12월이 지나거나 내려가면 연을 올림 혹은 내림처리를 해준다

calendar.add : add와 비교하면 올림,내림처리를 해주지않는다.

 

 

2. Arrays 클래스 13장 이후 다시 할 예정

클래스 내에서 제공하는 static메서드 등을 이용하여 배열의 비교나, 배열의 정렬 또는 배열의 내용을 특정 값으로 채우고자 하는 등의 일을 수행하는 클래스이다. 

 

3. DecimalFormat 클래스

StringFormat이 너무 강력하여 자주 사용하지 않는다.

 

4. SimpleDateFormat 클래스

TO_CHAR -> format

TO_NUMBER -> parse

 

p.347 표 삽입 필요

 

예제)

package chapter12;


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatEx {
	public static void main(String[] args) {
		Date date = new Date(); // 현재시간 받아옴
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy년MM월dd일 HH시mm분ss초");
		
		String result = sdf.format(date);
		System.out.println(result);
		
		String str = "2022년12월25일 0시0분0초";
		Date d = null;
		try {
			d = sdf.parse(str);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(d);
	}

}

 

13장 컬렉션 프레임워크

 

1. 개요

컬렉션 프레임워크는 데이터 그룹을 다루고 표현하기 위한 단일화된 아키텍쳐 라고 정의한다.

컬렉션이라는 단어는 모아놓은 데이터, 여러데이터, 무리, 그룹이라고 생각하면 된다.

모든 컬렉션 프레임워크의 클래스들은 "표준화된 방식"으로 기능을 제공하고 있다.컬렉션 프레임워크란 효율적으로 객체저장, 처리를 위해 추가, 삭제, 검색을 할 수 있는 다양한 클래스와 인터페이스들의 모임이며, 인터페이스를 통해 객체처리방식을 정형화한 것이다.p.360, 361 표 삽입 필요

인터페이스 특징 주요클래스
Collection List 데이터의 저장되는 순서 유지
중복저장 가능 (add,get)
ArrayList, Stack
Vector, LinkedList
Set(집합) 데이터의 저장되는 순서 유지 안됨
중복저장 불가
HashSet
TreeSet
Map 키(Key, Set)와 값(Value) 쌍으로 저장
키는 중복 불가
(put,get)
HashMap, Hashtable
TreeMap, Properties

 

2. List인터페이스

package chapter13;

import java.util.ArrayList;
import java.util.List;

public class ListEx {
	public static void main(String[] args) {
		List<Integer> list = new ArrayList<>();
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		list.add(1);
		
		System.out.println(list.size());
		
		System.out.println(list);
	}

}