반응형

JAVA/포스팅 374

java.time 패키지의 TemporalAccessor 인터페이스

TemporalAccessor는 java.time 패키지에서 시간 기반의 값을 읽기 위한 읽기 전용 인터페이스입니다. 이 인터페이스는 시간적인 정보에 접근하는 메서드를 정의하고 있습니다. TemporalAccessor 인터페이스의 주요 메서드 - long getLong(TemporalField field) 메서드 : 지정된 TemporalField에 해당하는 값을 long 형식으로 반환합니다. - boolean isSupported(TemporalField field) 메서드 : 지정된 TemporalField가 지원되는지 여부를 반환합니다. - int get(TemporalField field) 메서드 : 지정된 TemporalField에 해당하는 값을 int 형식으로 반환합니다. - R query(T..

JAVA/포스팅 2023.11.17

java.time 패키지의 Temporal 인터페이스

java.time 패키지의 Temporal 인터페이스는 날짜 및 시간의 개념을 나타내는 클래스가 구현해야 하는 인터페이스입니다. Temporal은 시간적인 정보에 접근하고 조작하는 메서드를 제공하는데, 이는 java.time 패키지의 많은 클래스에서 사용됩니다. Temporal 인터페이스는 두 가지 주요 서브 인터페이스를 가지고 있습니다. 1. TemporalAccessor 인터페이스 TemporalAccessor는 읽기 전용 메서드를 제공하는데, 이를 통해 날짜 및 시간 필드에 접근할 수 있습니다. 2. TemporalAdjuster 인터페이스 TemporalAdjuster는 시간을 조정하는 메서드를 정의하는데, 이를 통해 날짜 및 시간을 조작할 수 있습니다. Temporal 인터페이스에서 자주 사용되..

JAVA/포스팅 2023.11.17

java.time.Clock 클래스

java.time.Clock 클래스는 날짜와 시간을 가져오는 데 사용되는 추상 클래스입니다. 이 클래스는 Java 8에서 java.util.Date 및 System.currentTimeMillis() 대안으로 소개되었으며, java.time 패키지에서 다양한 시간 기반 작업을 수행하는 데 사용됩니다. 1. Clock 클래스의 주요 메서드 instant() 메서드 Clock 객체의 현재 시각을 나타내는 Instant를 반환합니다. millis() 메서드 현재 시각을 밀리초로 반환합니다. getZone() 메서드 Clock 객체가 사용하는 시간대(ZoneId)를 반환합니다. withZone(ZoneId zone) 메서드 새로운 시간대로 Clock 객체를 복제합니다. Clock 사용 예제 import java..

JAVA/포스팅 2023.11.17

java.time.YearMonth 클래스

java.time.YearMonth 클래스는 연도와 월을 함께 표현하는 클래스로, java.time 패키지에서 제공됩니다. 이 클래스는 연도와 월을 효과적으로 다루기 위한 메서드를 제공합니다. 1. YearMonth 클래스의 생성 YearMonth 객체는 다양한 방법으로 생성할 수 있습니다. 정적 팩토리 메서드 이용 YearMonth yearMonth = YearMonth.of(2023, 11); // 2023년 11월 현재 연도와 월 가져오기 YearMonth currentYearMonth = YearMonth.now(); YearMonth 사용 예제 import java.time.YearMonth; public class YearMonthExample { public static void main(S..

JAVA/포스팅 2023.11.17

java.time.Year 클래스

java.time.Year 클래스는 연도를 나타내는 클래스로, java.time 패키지에서 제공됩니다. 이 클래스는 특정 연도를 표현하고 연도와 관련된 연산을 수행할 수 있도록 도와줍니다. 1. Year 클래스의 생성 Year 객체는 다양한 방법으로 생성할 수 있습니다. 정적 팩토리 메서드 이용 Year year = Year.of(2023); 현재 연도 가져오기 Year currentYear = Year.now(); Year 사용 예제 import java.time.Year; public class YearExample { public static void main(String[] args) { // 정적 팩토리 메서드를 사용하여 Year 객체 생성 Year year2023 = Year.of(2023);..

JAVA/포스팅 2023.11.17

java.time.MonthDay 클래스

java.time.MonthDay 클래스는 월과 일을 나타내는 클래스로, java.time 패키지에서 제공됩니다. 이 클래스는 특정 연도와 연결되지 않은 월과 일만을 나타냅니다. 따라서 연도 정보 없이 월과 일 정보만을 다루기 위해 사용됩니다. 1. MonthDay 클래스의 생성 MonthDay 객체는 다양한 방법으로 생성할 수 있습니다. 정적 팩토리 메서드 이용 MonthDay monthDay = MonthDay.of(Month.FEBRUARY, 14); 현재 날짜를 이용 MonthDay currentMonthDay = MonthDay.now(); MonthDay 사용 예제 import java.time.Month; import java.time.MonthDay; import java.time.Loca..

JAVA/포스팅 2023.11.17

java.time.Month 클래스

java.time.Month 클래스는 월을 나타내는 열거형으로, Java 8에서 도입된 java.time 패키지에 속합니다. 이 클래스는 1월부터 12월까지의 상수를 제공합니다. 1. Month 상수 Month 열거형은 다음과 같은 상수를 가지고 있습니다. - JANUARY: 1월 - FEBRUARY: 2월 - MARCH: 3월 - APRIL: 4월 - MAY: 5월 - JUNE: 6월 - JULY: 7월 - AUGUST: 8월 - SEPTEMBER: 9월 - OCTOBER: 10월 - NOVEMBER: 11월 - DECEMBER: 12월 Month 사용 예제 import java.time.Month; import java.time.LocalDate; public class MonthExample { p..

JAVA/포스팅 2023.11.17

자바 java.time DayOfWeek

DayOfWeek 열거형은 일주일의 요일을 나타내는 상수를 정의하는 데 사용되는 Java 8에서 추가된 클래스입니다. java.time 패키지에 속하며, 주로 날짜 및 시간 API에서 사용됩니다. 1. DayOfWeek 상수 DayOfWeek 열거형은 다음과 같은 상수를 가지고 있습니다. - MONDAY: 월요일 - TUESDAY: 화요일 - WEDNESDAY: 수요일 - THURSDAY: 목요일 - FRIDAY: 금요일 - SATURDAY: 토요일 - SUNDAY: 일요일 DayOfWeek 사용 예제 import java.time.DayOfWeek; import java.time.LocalDate; public class DayOfWeekExample { public static void main(St..

JAVA/포스팅 2023.11.17

DateTimeFormatter 클래스

DateTimeFormatter 클래스는 날짜와 시간 객체를 원하는 형식의 문자열로 포맷하거나, 문자열을 날짜와 시간 객체로 파싱하는 데 사용되는 클래스입니다. Java 8에서 java.time 패키지에서 도입되었습니다.' 1. DateTimeFormatter 객체 생성 미리 정의된 형식 사용 DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME; 패턴을 사용하여 직접 형식 지정 DateTimeFormatter customFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); 2. DateTimeFormatter를 사용하여 날짜와 시간 객체를 문자열로 변환 LocalDateTime now ..

JAVA/포스팅 2023.11.17

java.time.Period 클래스

java.time.Period 클래스는 두 날짜 간의 기간을 나타내는 데 사용되는 클래스입니다. Period 클래스는 연, 월, 일의 간격을 나타낼 수 있습니다. 이 클래스는 날짜 간의 차이를 표현하고 계산하는 데 사용됩니다. 1. Period 객체 생성 연, 월, 일 간격으로 Period 객체 생성 Period period = Period.of(1, 2, 3); // 1 year, 2 months, 3 days 다양한 시간 단위를 혼합하여 Period 객체 생성 Period customPeriod = Period.ofYears(2).plusMonths(3).minusDays(5); // 2 years, 3 months, 5 days 2. Period 객체의 사용 Period 객체를 이용하여 날짜에 간격..

JAVA/포스팅 2023.11.17

java.time.Duration 클래스

java.time.Duration 클래스는 두 시점 간의 지속 시간을 나타내는 데 사용되는 클래스입니다. 이 클래스는 날짜 및 시간 API에서 제공되며, 시간을 나타내는 데 유용합니다. 1. Duration 객체 생성 초 단위로 Duration 객체 생성 Duration durationInSeconds = Duration.ofSeconds(60); // 60 seconds 분 단위로 Duration 객체 생성 Duration durationInMinutes = Duration.ofMinutes(30); // 30 minutes 시간 단위로 Duration 객체 생성 Duration durationInHours = Duration.ofHours(2); // 2 hours 다양한 시간 단위를 혼합하여 Dur..

JAVA/포스팅 2023.11.17

java.time.ZoneId 클래스

java.time.ZoneId 클래스는 지역 시간대를 나타내는 데 사용되는 클래스입니다. 이 클래스는 ZoneOffset와 함께 날짜 및 시간 API에서 사용되며, 특정 지역 시간대를 나타내거나 UTC에서의 오프셋을 나타내는 데 사용됩니다. 1. ZoneId 객체 생성 기본 시스템 시간대로 ZoneId 객체 생성 ZoneId systemZone = ZoneId.systemDefault(); 특정 지역 시간대로 ZoneId 객체 생성 ZoneId newYorkZone = ZoneId.of("America/New_York"); 2. ZoneId 객체의 사용 ZonedDateTime 객체에 ZoneId 적용 LocalDateTime localDateTime = LocalDateTime.now(); ZonedD..

JAVA/포스팅 2023.11.17

java.time.ZonedDateTime 클래스

java.time.ZonedDateTime 클래스는 지역 시간대 정보까지 포함한 날짜와 시간을 나타내는 클래스입니다. ZonedDateTime은 LocalDateTime과 ZoneId를 결합하여 특정 지역 시간대에 해당하는 날짜와 시간 정보를 제공합니다. 1. ZonedDateTime 객체 생성 현재 날짜와 시간으로 ZonedDateTime 객체 생성 ZonedDateTime currentDateTime = ZonedDateTime.now(); 특정 날짜와 시간으로 ZonedDateTime 객체 생성 LocalDateTime localDateTime = LocalDateTime.of(2023, Month.FEBRUARY, 20, 15, 30); ZoneId zoneId = ZoneId.of("Europe..

JAVA/포스팅 2023.11.17

java.time.LocalDateTime 클래스

java.time.LocalDateTime 클래스는 날짜와 시간 정보를 모두 포함하는 클래스로, 날짜와 시간을 함께 다루어야 하는 경우에 사용됩니다. 이 클래스는 LocalDate와 LocalTime을 조합한 형태로, 연월일과 시분초를 모두 가지고 있습니다. 아래는 LocalDateTime 클래스의 주요 특징과 사용법에 대한 설명입니다. 1. LocalDateTime 객체 생성 현재 날짜와 시간으로 LocalDateTime 객체 생성 LocalDateTime currentDateTime = LocalDateTime.now(); 특정 날짜와 시간으로 LocalDateTime 객체 생성 LocalDateTime specificDateTime = LocalDateTime.of(2023, Month.JANUAR..

JAVA/포스팅 2023.11.17

java.time.LocalTime 클래스

java.time.LocalTime 클래스는 시간 정보를 나타내기 위한 클래스로, 날짜 정보를 포함하지 않습니다. 이 클래스는 특정 시간대의 시간을 표현하며, 시, 분, 초, 밀리초(밀리세컨드) 정보를 저장합니다. 아래는 LocalTime 클래스의 주요 특징과 사용법에 대한 설명입니다. 1. LocalTime 객체 생성 현재 시간으로 LocalTime 객체 생성 LocalTime currentTime = LocalTime.now(); 특정 시간으로 LocalTime 객체 생성 LocalTime specificTime = LocalTime.of(12, 30, 45); 특정 시간대의 시간으로 LocalTime 객체 생성 ZoneId zoneId = ZoneId.of("America/New_York"); Lo..

JAVA/포스팅 2023.11.17

java.time.LocalDate 클래스

java.time.LocalDate 클래스는 날짜 정보를 나타내기 위한 클래스로, 시간 정보를 포함하지 않습니다. 이 클래스는 특정 시간대의 날짜를 표현하며, 연, 월, 일 정보를 저장합니다. 1. LocalDate 객체 생성 현재 날짜로 LocalDate 객체 생성 LocalDate currentDate = LocalDate.now(); 특정 날짜로 LocalDate 객체 생성 LocalDate specificDate = LocalDate.of(2023, 11, 1); 2. LocalDate 객체에서 날짜 정보 가져오기 연도, 월, 일 정보 가져오기 int year = currentDate.getYear(); Month month = currentDate.getMonth(); int day = curr..

JAVA/포스팅 2023.11.16

java.time.Instant 클래스

java.time.Instant 클래스는 날짜와 시간을 특정 시점(에포크 시간)으로 표현하는 데 사용됩니다. 1. Instant 클래스의 생성 현재 시간으로 Instant 객체 생성 Instant now = Instant.now(); 특정 에포크 시간(초)으로 Instant 객체 생성 Instant epochTimeInstant = Instant.ofEpochSecond(1627582900); 특정 에포크 시간과 나노초로 Instant 객체 생성 Instant customInstant = Instant.ofEpochSecond(1627582900, 500_000_000); 2. 에포크 시간 및 나노초 가져오기 에포크 시간(초) 가져오기 long epochSecond = instant.getEpochSec..

JAVA/포스팅 2023.11.16

자바 java.time패키지의 주요 클래스

java.time 패키지는 다양한 클래스와 인터페이스로 구성되어 있으며, 날짜와 시간을 처리하기 위한 다양한 기능을 제공합니다. 여기에서는 java.time 패키지의 주요 클래스와 인터페이스를 간단히 소개합니다. 1. Instant : 에포크 시간(1970-01-01 00:00:00 UTC부터 경과된 시간)을 나타내는 클래스입니다. 전 세계적으로 동일한 시점을 나타냅니다. 2. LocalDate : 날짜 정보만을 나타내는 클래스로, 연, 월, 일을 사용하여 날짜를 표현합니다. 3. LocalTime : 시간 정보만을 나타내는 클래스로, 시, 분, 초, 나노초를 사용하여 시간을 표현합니다. 4. LocalDateTime : 날짜와 시간 정보를 모두 포함하는 클래스로, LocalDate와 LocalTime의..

JAVA/포스팅 2023.11.16

자바 java.time패키지

java.time 패키지는 자바 8부터 추가된 새로운 날짜와 시간 API를 제공합니다. 기존의 java.util.Date 및 java.util.Calendar 클래스보다 훨씬 강력하고 사용하기 쉽게 설계되었습니다. 이 API는 불변(immutable)하고 쓰레드 안전(thread-safe)하며, ISO 표준에 따라 날짜와 시간을 처리합니다. 주요 클래스와 개념은 다음과 같습니다. - LocalDate : 날짜 정보만을 나타냅니다. 연, 월, 일을 사용하여 날짜를 표현합니다. - LocalTime : 시간 정보만을 나타냅니다. 시, 분, 초, 나노초를 사용하여 시간을 표현합니다. - LocalDateTime : 날짜와 시간 정보를 모두 포함하는 클래스로, LocalDate와 LocalTime의 조합입니다...

JAVA/포스팅 2023.11.16

자바 MessageFormat

MessageFormat 클래스는 형식화된 메시지를 생성하는 데 사용되는 클래스입니다. 이 클래스는 특정 패턴을 사용하여 메시지의 형식을 지정하고, 지정된 패턴에 맞게 데이터를 삽입하여 메시지를 생성합니다. MessageFormat은 주로 다국어 지원 및 메시지의 동적 생성에 활용됩니다. 다음은 MessageFormat를 사용한 간단한 예제입니다. import java.text.MessageFormat; import java.util.Locale; public class MessageFormatExample { public static void main(String[] args) { // 패턴 정의 String pattern = "Hello, {0}! Today is {1}."; // MessageFor..

JAVA/포스팅 2023.11.16

자바 ChoiceFormat

ChoiceFormat 클래스는 특정 범위에 대해 여러 서식을 제공하고, 범위에 따라 다른 텍스트를 선택할 수 있도록 해주는 클래스입니다. ChoiceFormat은 주로 특정 값에 대한 범위를 정의하고, 해당 값이 범위에 속할 때에 대한 서식을 제공하는 데 사용됩니다. 다음은 ChoiceFormat를 사용한 간단한 예제입니다. import java.text.ChoiceFormat; public class ChoiceFormatExample { public static void main(String[] args) { // 패턴 및 범위를 정의합니다. double[] limits = {60, 70, 80, 90}; // 범위의 경계값 String[] grades = {"D", "C", "B", "A"}; /..

JAVA/포스팅 2023.11.16

자바 SimpleDateFormat

SimpleDateFormat 클래스는 날짜와 시간을 원하는 형식으로 표시하고 파싱하는 데 사용되는 클래스입니다. 이 클래스는 java.text.DateFormat 인터페이스를 구현하고 있으며, 날짜 및 시간 패턴을 정의하여 형식화된 문자열로 변환하거나 반대로 문자열을 날짜 및 시간으로 파싱할 수 있습니다. SimpleDateFormat 사용 예제 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class SimpleDateFormatExample { public static void main(String[] args) { // 현재 날짜 및 시간 Date currentDate ..

JAVA/포스팅 2023.11.16

자바 DecimalFormat

DecimalFormat 클래스는 NumberFormat 클래스를 상속한 클래스로서, 숫자를 특정한 형식으로 형식화하고 파싱하는 데 사용됩니다. 이 클래스는 특히 소수점 이하 자릿수, 천 단위 구분 기호 등을 사용자가 원하는 대로 지정할 수 있는 유연한 기능을 제공합니다. DecimalFormat 사용 예제 import java.text.DecimalFormat; public class DecimalFormatExample { public static void main(String[] args) { double number = 1234567.89; // 소수점 이하 2자리까지 표시 DecimalFormat decimalFormat = new DecimalFormat("#,##0.00"); String f..

JAVA/포스팅 2023.11.16

자바 형식화 클래스

Java에서 형식화 클래스는 주로 날짜, 숫자, 텍스트 등을 특정한 형식으로 표현하거나 파싱하는데 사용됩니다. 대표적인 형식화 클래스로는 SimpleDateFormat (날짜 및 시간 형식화), NumberFormat (숫자 형식화), DecimalFormat (숫자 및 십진수 형식화), MessageFormat (메시지 형식화) 등이 있습니다. 1. SimpleDateFormat 클래스 SimpleDateFormat 클래스는 날짜 및 시간을 원하는 형식으로 표현하거나 해당 형식으로 날짜 및 시간을 파싱하는 데 사용됩니다. import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public clas..

JAVA/포스팅 2023.11.16

자바 Date

java.util.Date 클래스는 Java에서 날짜와 시간을 나타내는 클래스 중 하나입니다. 그러나 이 클래스는 Java 1.1 이후에 새로운 날짜 및 시간 API (java.time 패키지)가 도입되면서 더 이상 권장되지 않습니다. Java 1.1 이전에는 Date 클래스가 주요한 날짜 및 시간 관련 기능을 제공했습니다. java.util.Date 클래스의 주요 메서드와 특징 1. 객체 생성 // 현재 날짜와 시간을 가진 Date 객체 생성 Date currentDate = new Date(); 2. 시간 정보 얻기 및 설정 long timestamp = currentDate.getTime(); // 1970년 1월 1일 00:00:00(UTC)부터 현재까지의 밀리초로 반환 currentDate.se..

JAVA/포스팅 2023.11.16

자바 Calendar

java.util.Calendar 클래스는 날짜와 시간을 다루기 위한 추상 클래스로, 다양한 연산 및 필드를 제공합니다. 이 클래스는 추상 클래스이기 때문에 직접적으로 인스턴스를 생성할 수 없고, 구체적인 구현 클래스인 GregorianCalendar를 이용하여 인스턴스를 얻습니다. 주요 메서드 및 필드에 대한 설명은 다음과 같습니다. 1. Calendar 객체 생성 import java.util.Calendar; public class CalendarExample { public static void main(String[] args) { // 현재 날짜와 시간을 가진 Calendar 객체 얻기 Calendar calendar = Calendar.getInstance(); } } 2. 필드(Fields..

JAVA/포스팅 2023.11.16

자바 날짜와 시간

Java에서 날짜와 시간을 다루기 위한 주요 클래스들은 java.util 및 java.time 패키지에 포함되어 있습니다. Java 8 이전에는 java.util.Date 및 java.util.Calendar가 주로 사용되었으나, Java 8부터는 java.time 패키지에서 새로운 API가 소개되었습니다. 1. java.util.Date (Java 7 이전) Date 클래스는 날짜와 시간을 나타내는 클래스로, 다만 Java 8 이전에는 많은 문제가 있어서 현재는 권장되지 않습니다. import java.util.Date; public class DateExample { public static void main(String[] args) { // 현재 날짜와 시간 얻기 Date currentDate =..

JAVA/포스팅 2023.11.16

자바 java.math.BigDecimal클래스

java.math.BigDecimal 클래스는 고정 소수점 및 부동 소수점 연산을 위한 정밀한 산술 연산을 제공하는 클래스입니다. 이 클래스는 부정확한 부동 소수점 연산에서 발생할 수 있는 문제를 피하기 위해 사용됩니다. BigDecimal 클래스는 불변(immutable)하며, 정확한 정밀도로 연산을 수행할 수 있습니다. java.math.BigDecimal 클래스의 주요 메서드 1. add(BigDecimal augend) 및 subtract(BigDecimal subtrahend) 메서드 두 BigDecimal 객체를 더하거나 빼는 연산을 수행합니다. BigDecimal num1 = new BigDecimal("123.456"); BigDecimal num2 = new BigDecimal("789...

JAVA/포스팅 2023.11.16

자바 java.math.BigInteger클래스

java.math.BigInteger 클래스는 임의의 정수를 정확하게 표현할 수 있는 클래스입니다. 이 클래스는 정수 값이 int나 long의 범위를 벗어나는 경우에 사용됩니다. BigInteger 클래스는 불변(immutable)하며, 다양한 정수 연산을 지원합니다. java.math.BigInteger 클래스의 주요 메서드 1. add(BigInteger val) 및 subtract(BigInteger val) 메서드 두 BigInteger 객체를 더하거나 빼는 연산을 수행합니다. BigInteger num1 = new BigInteger("12345678901234567890"); BigInteger num2 = new BigInteger("98765432109876543210"); BigInteg..

JAVA/포스팅 2023.11.16

자바 java.util.StringTokenizer클래스

java.util.StringTokenizer 클래스는 문자열을 특정 구분자(delimiter)를 기준으로 토큰(token)으로 나누는 데 사용되는 클래스입니다. 이 클래스는 간단하게 문자열을 분리하고자 할 때 유용하게 활용될 수 있습니다. StringTokenizer 클래스의 주요 메서드 1. StringTokenizer(String str) 생성자 주어진 문자열을 기본 구분자(공백)를 기준으로 토큰으로 나눕니다. StringTokenizer tokenizer = new StringTokenizer("This is a sample sentence"); 2. StringTokenizer(String str, String delim) 생성자 주어진 문자열을 지정된 구분자를 기준으로 토큰으로 나눕니다. St..

JAVA/포스팅 2023.11.16