본문 바로가기

Java 기본 문법 - 참조 서적 [이것이 자바다 - 한빛미디어]/9. 기본 API 클래스

(16)
16. Java 자바 [API] - java.time 패키지 자바 8 부터 추가된 날짜와 시간을 조작하는 여러 가지 추가된 API 패키지 설명 java.time 날짜와 시간을 나타내는 핵심 API 클래스를 포함 이 클래스들은 ISO-8601에 정의된 달력 시스템에 기초한다. java.time.chrono ISO-8601 에 정의된 달력 시스템 이외의 달력 시스템이 필요 시 사용하는 API java.time.format 날짜와 시간을 파싱하고 포맷팅 하는 API java.time.temporal 날짜와 시간을 연산하기 위한 보조 API java.time.zone 타임존을 지원하는 API java.time 패키지에는 아래와 같이 날짜와 시간을 표현하는 5개의 클래스가 있다. - LocalDate : 로컬 날짜 클래스 - LocalTime : 로컬 시간 클래스 - Lo..
15. Java 자바 [API] - Format 클래스 Format 클래스는 원하는 문자열로 조합하는 과정을 쉽게 해준다. java.text 패키지에 포함되어 있고, 다양한 클래스들을 제공한다. 1. 숫자 형식 클래스 DecimalFormat DecimalFormat 은 숫자 데이터를 원하는 형식으로 표현하기 위해 사용된다. 기호 의미 패턴 예시 1234567.89 변환 결과 0 10 진수(빈자리는 0으로 채움) 0 0.0 0000000000.00000 1234568 1234567.9 0001234567.89000 # 10 진수(빈자리는 채우지 않음) # #.# ##########.##### 1234568 1234567.9 1234567.89 . 소수점 #.0 1234567.9 - 음수 기호 +#.0 -#.0 +1234567.9 -1234567.9 , 단위 ..
14. Java 자바 [API] - Date, Calendar 클래스 Date, Calendar 클래스는 java.util 패키지에 포함되어 있다. 1. Date 클래스 날짜를 표현하는 클래스로 객체 간에 날짜 정보를 주고 받을 때 주로 사용된다. Date 클래스에는 여러 개의 생성자가 선언되어 있지만, 대부분 비권장(Deprecated) 되어 Date() 생성자만 주로 사용된다. 컴퓨터의 현재 날짜를 읽어 Date 객체로 만든다. Date now = new Date(); 현재 날짜를 문자열로 얻고 싶다면 toString() 메소드를 사용하면 된다. 영문으로 된 날짜를 리턴하고, 만약 특정 문자열 포멧으로 얻고 싶다면, java.text.SimpleDateFormat 클래스를 이용한다. 예) DateExample.java : 현재 날짜 출력 public class Date..
13. Java 자바 [API] - Math, Random 클래스 1. Math 클래스 java.lang.Math 클래스는 수학 계산에 사용할 수 있는 메소드를 제공한다. 해당 메소드들은 모두 정적(static) 이므로 Math 클래스로 바로 사용 가능하다. 메소드 설명 예제 코드 리턴값 int abs(int a) double abs(double a) 절대값 int v1 = Math.abs(-5); double v2 = Math.abs(-3.14); v1 = 5 v2 = 3.14 double ceil(double a) 올림값 double v3 = Math.ceil(5.3); double v4 = Math.ceil(-5.3); v3 = 6.0 v4 = -5.0 double floor(double a) 버림값 double v5 = Math.floor(5.3); double..
12. Java 자바 [API] - Wrapper (포장) 클래스 Wrapper 클래스 자바는 기본 타입의 값을 갖는 객체를 생성할 수 있다. 이러한 객체를 포장(Wrapper) 객체라고 한다. 기본 타입의 값을 내부에 두고 포장을 하기 때문이다. 포장 객체의 특징은 포장하고 있는 기본 타입 값은 외부에서 변경할 수 없다. 내부의 값을 변경하고 싶다면, 새로운 포장 객체를 만들어야 한다. 포장 클래스는 java.lang 패키지에 포함되어 있다. 아래와 같이 기본 타입에 대응되는 클래스들이 있다. Char 타입, int 타입이 각각 Character, Integer로 변경되고, 기본 타입의 첫 문자를 대문자로 바꾼 이름을 가지고 있다. 기본 타입 포장 클래스 byte Byte char Character short Short int Integer long Long floa..
11. Java 자바 [API] - Arrays 클래스 Arrays 클래스 배열 조작 기능을 가지고 있다. (배열의 복사, 항목 정렬, 항목 검색 등의 기능) 단순한 배열 복사는 System.arraycopy() 메소드를 사용할 수 있으나, Arrays는 추가적으로 항목 정렬, 항목 검색, 항목 비교와 같은 기능을 제공해준다. Arrays 클래스의 메소드들 (모든 메소드는 static 이므로 Arrays 클래스로 바로 사용 가능하다.) 리턴 타입 메소드 이름 설명 int binarySearch(배열, 찾는값) 전체 배열 항목에서 찾는 값이 있는 인덱스 리턴 타겟 배열 copyOf(원본배열, 복사할길이) 원본 배열의 0번 인덱스에서 복사할 길이 만큼 복사한 배열 리턴, 복사할 길이는 원본 배열보다 커도 되며, 타겟 배열의 길이가 된다. 타겟 배열 copyOfR..
10. Java 자바 [API] - 정규 표현식, Pattern 클래스 문자열이 정해져 있는 형식 (정규 표현식 : Regular Expression) 으로 구성되어 있는지 검증해야 하는 경우가 있다. (이메일, 전화번호 등..) 1. 정규 표현식 작성 방법 java.util.regex.Pattern 클래스를 찾아 Summary of regular-expression constructs 를 참조한다. 정규 표현식은 문자 또는 숫자 기호와 반복 기호가 결합 된 문자열이다. 기호 설명표 기호 설명 [ ] 한 개의 문자 [abc] a, b, c 중 하나의 문자 [^abc] a, b, c 이외의 하나의 문자 [a-zA-Z] a~z, A~Z 중 하나의 문자 \d 한 개의 숫자 [0-9] 와 동일 \s 공백 \w 한 개의 알파벳 또는 한 개의 숫자, [a-zA-Z_0-9] 와 동일 ?..
9. Java 자바 [API] - StringBuffer, StringBuilder 클래스 문자열을 저장하는 String 객체는 내부의 문자열을 수정할 수 없다. (새로운 문자열을 리턴한다.) String 객체 + 연산을 할 경우도 마찬가지이다. String data = “ABC”; data += “DEF” String 객체는 내부 데이터를 수정할 수 없으므로 “ABC” 에 “DEF”가 추가된 “ABCDEF” 라는 새로운 String 객체가 생성된다. data 변수는 새로 생성된 String 객체를 참조하게 된다. + 연산자를 사용한 만큼 String 객체 수가 늘어나기 때문에 성능을 느리게 할 수 있다. 따라서 문자열 변경 작업이 많을 경우, java.lang 패키지의 StringBuffer 또는 StringBuilder 클래스를 사용하는 것이 좋다. 이 두 클래스는 내부 버퍼(buffer ..