52
Chap09 패패패패 패패 패패패 Chap09 패패패패 패패 패패패 9.1 패패패 패패패 패패패패 패패 9.2 java.lang 패패패패 패패 9.3 Object 패패패 9.4 패패 (Wrapper) 패패패 9.5 패패패패 패패 9.6 String 패패패 9.7 StringBuffer 패패패 9.8 패패패패 패패패 패패 9.9 Random 패패패 9.10 Arrays 패패패

Chap09 패키지와 주요 클래스

  • Upload
    erling

  • View
    89

  • Download
    3

Embed Size (px)

DESCRIPTION

Chap09 패키지와 주요 클래스. 9.1 패키지 개요와 패키지의 사용 9.2 java.lang 패키지의 개요 9.3 Object 클래스 9.4 포장 (Wrapper) 클래스 9.5 문자열의 개요 9.6 String 클래스 9.7 StringBuffer 클래스 9.8 유틸리티 패키지 개요 9.9 Random 클래스 9.10 Arrays 클래스. 9.1 패키지 개요와 패키지의 사용. 패키지 : 비슷한 종류의 클래스나 인터페이스들을 묶어 패키지화 한다 JDK 에서 많은 패키지 제공 - PowerPoint PPT Presentation

Citation preview

Page 1: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

Chap09 패키지와 주요 클래스9.1 패키지 개요와 패키지의 사용9.2 java.lang 패키지의 개요9.3 Object 클래스9.4 포장 (Wrapper) 클래스9.5 문자열의 개요9.6 String 클래스9.7 StringBuffer 클래스9.8 유틸리티 패키지 개요9.9 Random 클래스9.10 Arrays 클래스

Page 2: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.1 패키지 개요와 패키지의 사용패키지 : 비슷한 종류의 클래스나 인터페이스들을 묶어 패키지화 한다

JDK 에서 많은 패키지 제공

java.lang : 자바 프로그램의 기본적인 기능을 제공 . 명시적으로 지정하지 않아도 모든 자바 프로그램에 포함되는 패키지

java.util : 유용한 유틸리티 클래스를 제공

java.io : 입출력 기능을 제공하는 패키지

java.net : 네트워킹과 관련된 기능을 제공하는 패키지 . telnet, ftp, http 와 같은 프로토콜을 사용할 수 있는 클래스를 제공

java.awt : 그래피컬 사용자 인터페이스 (GUI) 를 구축하기 위한 다양한 컴포넌트를 제공하는 패키지

java.awt.event : AWT 컴포넌트들의 이벤트를 제어하는 패키지

java.applet : 애플릿 프로그램과 연관된 클래스를 제공하는 패키지

Page 3: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.1 패키지 개요와 패키지의 사용패키지의 사용 import 문을 사용하여 패키지 포함

import java.util.Date;...... Date date = new Date(); // java.util.Date 클래스만을 사용......

import java.util.*;....... Date date = new Date(); // java.util 패키지의 모든 클래스를 사용 Random random = new Random(); Stack stack = new Stack(); Hashtable hashtable = new Hashtable(); ....................

Page 4: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.2 java.lang 패키지의 개요

모든 자바 프로그램에 자동으로 포함되는 패키지 Boolean

CharacterClassClassLoaderCompiler ByteMath DoubleNumber FloatProcess Integer

Object Runtime LongSecurityManager ShortString(12 장 )StringBuffer(12 장 )SystemThread(10 장 )ThreadGroupThrowablevoid

java.lang 패키지주요 클래스의 계층구조

Page 5: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.3 Object 클래스모든 자바 프로그램의 최상위 클래스모든 자바 프로그램에 상속된다 . extends 예약어를 사용하여 명시적으로 지정하지 않아도 상속된다모든 자바 프로그램에서 Object 클래스의 메소드를 자유롭게 사용

Page 6: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.3 Object 클래스Object 클래스의 주요 메소드

메소드 이름 설명Ojbect clone() 객체를 복제하기 위해 사용하는 메소드

boolean equals(Object object)

두 개의 객체가 같은 지를 비교하여 같으면 true, 아니면 false 를 반환

void finalize() 자 바 에 서 는 객 체 가 더 이 상 사 용 되 지 않 으 면 자동적으로 쓰레기 수집 (garbage collection) 기능을 수행한다 . finalize() 메소드는 쓰레기 수집 기능이 수 행 되 기 전 에 호 출 되 며 객 체 가 점 유 하 고 있 던 자원들을 해제하는데 사용되는 메소드

Class getClass() 객체의 클래스명을 Class 형의 객체로 반환

int hashCode() 호출한 객체와 연관된 hash 코드를 얻는다 .

String toString() 현재 객체의 문자열 표현을 반환한다void notify() 대기중인 스레드 중 하나의 스래드를 다시 시작시킨다

void notifyAll() 대기중인 모든 스레드를 다시 시작시킨다

void wait() 실행을 중지하고 대기 상태로 간다

Page 7: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스자바에서는 실행의 효율성을 위해 기본자료형 (8 가지 ) 을 값으로 직접 사용할 수 있다또한 8 가지의 기본 자료형을 객체로 사용할 수 있는 클래스를 제공8 개의 기본 자료형과 괄련된 클래스를 포장 (wrapper) 클래스라 한다기본 자료형을 객체로 사용하면 해당 클래스에서 제공되는 유용한 메소드들을 사용할 수 있다 .( 효율성은 값을 사용하는 방법보다 뒤진다 )포장 클래스 Boolean, Character, Byte, Short, Integer, Long, Float, Double

포장 클래스로부터 생성된 기본 자료형 객체의 값은 한번 생성된 다음에는 변할 수 없다

Page 8: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스포장 클래스를 사용하는 예

class ValueandWrapper { public static void main(String args[]) { int num1 = 20; // 정수 num1( 값사용 ) 을 생성 Integer num2 = new Integer(30); // Integer 포장 클래스를 이용하여 정수 객체 num2 를 생성 // JDK 5.0 이후에는 Integer num2 = 30; 의 형태로 사용 가능 int total = num1 + num2.intValue(); System.out.println(" 두수의 합은 : " + total); }}

Page 9: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스9.4.1 Integer 클래스

정수값을 포장하는 클래스 생성자

Integer(int n)Integer(String str)

n : 정수형 값 str : 문자열 ( 문자열과 동등한 정수값을 생성 )

Page 10: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스Integer 클래스의 주요 메소드

메소드 이름 설명byte byteValue()(double, float, short, int ,long 에도 적용 )

현 객체의 값을 byte 값으로 변환하여 반환 (double, float, short, int ,long에도 적용 )

String toString() 현 객체의 값을 문자열로 변환하여 반환boolean equals(Object IntegerObj) 현 객체와 IntegerObj 로 지정된 객체의

값이 같으면 true, 다르면 false 를 반환

static Integer decode(String str) throws NumberFormatException

문자열 str 에 해당하는 Integer 객체를 반환

static int parseInt(String str) throws NumberFormatException

문자열 str 에 해당하는 int 값을 반환

Page 11: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스Integer 클래스의 주요 메소드 ( 계속 )

메소드 이름 설명static int parseInt(String str, int radix) throws NumberFormatException

문자열 str 에 해당하는 int 값을 radix 로 지정된 진법으로 반환

static String toBinaryString(int num) num 으로 지정된 정수값의 2 진법 표현을 가지는 String 객체를 반환

static String toHexString(int num) num 으로 지정된 정수값의 16 진법 표현을 가지는 String 객체를 반환

static String toOctalString(int num) num 으로 지정된 정수값의 8 진법 표현을 가지는 String 객체를 반환

static Integer valueOf(String str) throws NumberFormatException

문자열 str 에 해당하는 Integer 객체를 반환

static Integer valueOf(String str, int radix) throws NumberFormatException

문자열 str 에 해당하는 Integer 객체를 radix로 지정된 진법으로 반환

Page 12: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스

예제 : IntegerExam1.java

Page 13: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스9.4.2 Character 클래스

문자값을 포장하는 클래스 생성자Character (char c)

• c : char 형의 값

Character 클래스의 메소드메소드이름 설명

static boolean isDefined(char ch) ch 가 Unicode 이면 true 아니면 false 를 반환

static boolean isDigit(char ch) ch 가 숫자이면 true 아니면 false 를 반환

static boolean isLetter(char ch) ch 가 문자이면 true 아니면 false 를 반환

static boolean isLetterOrDigit(char ch) ch 가 문자 또는 숫자이면 true 아니면 false 를 반환

static boolean isLowerCase(char ch) ch 가 소문자이면 true 아니면 false 를 반환

static boolean isSpace(char ch) ch 가 공백문자이면 true 아니면 false 를 반환

static boolean isUpperCase(char ch) ch 가 대문자이면 true 아니면 false 를 반환

static char toLowerCase(char ch) ch 로 지정된 문자를 소문자로 변환하여 반환

static char toUpperCase(char ch) ch 로 지정된 문자를 대문자로 변환하여 반환

Page 14: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스

예제 : CharacterExam1.java

Page 15: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스9.4.3 Byte 클래스

byte 값을 포장하는 클래스 생성자

Byte(byte b)Byte(String s) throws NumberFormatException

• b : byte 형 값• s : byte 형의 값과 같은 의미의 문자열 . S 가 byte 형의 문자열이 아닐 경우 Number

FormatException 예외 발생

Page 16: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스Byte 클래스의 주요 메소드

메소드 이름 설명byte byteValue()(double, float, short, int ,long 에도 적용 )

현 객체의 값을 byte 값으로 변환하여 반환 (double, float, short, int ,long 에도 적용 )

String toString() 현 객체의 값을 문자열로 변환하여 반환boolean equals(Object BytesObj) 현 객체가 가지고 있는 값과 BytesObj 로

지정된 객체가 가지고 있는 값이 같으면 true, 다르면 false 를 반환

static Byte decode(String str)throws NumberFormatFxception

str 로 지정된 문자열에 해당하는 Byte 객체를 반환

static byte parseByte(String str)throws NumberFormatException

str 로 지정된 문자열에 해당하는 byte 값을 반환

static byte parseByte(String str, int radix) throws NumberFormatException

str 로 지정된 문자열에 해당하는 byte 값을 radix 로 지정된 진법으로 반환

Page 17: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스9.4.4 Short 클래스

Short 형의 값을 포장하는 클래스 생성자

Short(short s)Short(String str) throws NumberFormatException

s : short 형 값str : short 형의 값과 같은 의미의 문자열

Page 18: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스Short 클래스의 주요 메소드

메소드 이름 설명byte byteValue()(double, float, short, int ,long 에도 적용 )

현 객체의 값을 byte 값으로 변환하여 반환(double, float, short, int ,long 에도 적용 )

String toString() 현 객체의 값을 문자열로 변환하여 반환boolean equals(Object ShortObj) 현 객체가 가지고 있는 값과 ShortObj 로

지정된 객체가 가지고 있는 값이 같으면 true, 다르면 false 를 반환

static Short decode(String str)throws NumberFormatException

str 로 지정된 문자열에 해당하는 Short 객체를 반환

static short parseShort(String str) throws NumberFormatException

str 로 지정된 문자열에 해당하는 short 값을 반환

static short parseShort(String str, int radix) throws NumberFormatException

str 로 지정된 문자열에 해당하는 short 값을 radix 로 지정된 진법으로 반환

static Short valueOf(String str)throws NumberFormatException

str 로 지정된 문자열에 해당하는 Short 객체를 반환

Page 19: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스

예제 : ShortExam.java

Page 20: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스9.4.5 Long 클래스

long 값을 포장하는 클래스 생성자

Long(long l)Long(String str) throws NumberFormatException

l : long 형의 값str : long 형의 값과 같은 의미의 문자열

Page 21: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스Long 클래스의 주요 메소드

메소드 이름 설명byte byteValue()(double, float, short, int ,long 에도 적용 )

현 객체의 값을 byte 값으로 변환하여 반환(double, float, short, int ,long 에도 적용 )

String toString() 현 객체의 값을 문자열로 반환boolean equals(Object LongObj) 현 객체가 가지고 있는 값과 LongObj 로

지정된 객체가 가지고 있는 값이 같으면 true, 다르면 false 를 반환

static long parseLong(String str)throws NumberFormatException

str 로 지정된 문자열에 해당하는 long 값을 반환

static long parseLong(String str, int radix) throws NumberFormatException

str 로 지정된 문자열에 해당하는 long 값을 radix 로 지정된 진법으로 반환

static String toBinaryString(long num) num 의 2 진 표현을 문자열로 반환static String toHexString(long num) num 의 16 진 표현을 문자열로 반환static String toOctalString(long num) num 의 8 진 표현을 문자열로 반환static Long valueOf(String str)throws NumberFormatException

str 로 지정된 값을 가지는 Long 객체를 반환

Page 22: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.4 포장 (Wrapper) 클래스

예제 : LongExam.java

Page 23: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.5 문자열의 개요자바에서는 문자열을 객체로 취급

java.lang 패키지에 포함

java.lang.String 클래스와 java.lang.StringBuffer 클래스 제공 String 클래스 : 한번 생성된 다음 변하지 않는 문자열에 사용 StringBuffer 클래스 : 계속하여 변할 수 있는 문자열에 사용

문자열을 2 개의 클래스로 제공하는 이유 : 효율성

Page 24: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스생성자

String()String(char chars[])String(char chars[], int startindex, int numChars)String(String strObj)String(byte asciiChars[], byte highOrderByte)String(byte asciiChars[], byte highOrderByte, int startindex, int numChars)String(byte asciiChars[])String(byte asciiChars[], int startIndex, int numChars)

chars[] : 문자 배열 startindex : 부분 문자열을 추출하기 위해 지정된 인덱스 값numChars : startindex 에서 시작하여 추출할 문자 또는 바이트의 개수asciiChars[] : 바이트 배열로서 아스키 (ascii) 문자 배열을 의미highOrderByte : 각 문자들 ( 아스키 , 한글 등 ) 의 상위 바이트를 지정하는 값이며 , 아스키 문자를 지정하기 위해서는 0 을 사용

Page 25: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스String 클래스의 주요 메소드

메소드 이름 설명

int length() 문자열의 길이를 반환char charAt(int i) 문자열에서 i 번째 문자를 반환void getChars(int sourceStart, int sourceEnd, char target[], int targetStart)

문자열의 일부를 문자배열 (target[]) 로 작성

byte[] getBytes() 현재의 문자열을 바이트 배열로 반환boolean equals(Object str) 현재의 문자열과 str 로 지정된 문자열이 같으면 tru

e, 다르면 false 를 반환

boolean equalsIgnoreCase(String str) 현재의 문자열과 str 로 지정된 문자열이 같으면 true, 다르면 false 를 반환 . 단 , 비교시 대소문자를 무시

boolean startsWith(String str) 현재의 문자열이 str 로 시작하면 true, 아니면 false를 반환

boolean endsWith(String str) 현재의 문자열이 str 로 끝나면 true, 아니면 false 를 반환

int compareTo(String str) 두 개의 문자열을 비교하여 결과로 양수 , 음수 , 0 의 값을 반환

int indexOf(char ch) 현재의 객체가 가지고 있는 문자열내에서 ch 로 지정된 문자의 첫 번째 인덱스를 반환

Page 26: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스String 클래스의 주요 메소드 -계속

메소드 이름 설명int indexOf(String str) 문자열 str 의 첫 번째 인덱스를 반환

int indexOf(int ch, int startIndex) 인덱스 startIndex 이후의 문자 ch 의 첫 번째 인덱스를 반환

int indexOf(String str, int startIndex) 인덱스 startIndex 이후의 문자열 str 의 첫 번째 인덱스를 반환

int lastindexOf(char ch) 문자 ch 의 마지막 인덱스를 반환

int lastindexOf(String str) 문자열 str 의 마지막 인덱스를 반환

int lastindexOf(int ch, int startIndex) 인덱스 startIndex 이전의 문자 ch 의 마지막 인덱스

int lastindexOf(String str, int startIndex) 인덱스 startIndex 이전의 문자열 str 의 마지막 인덱스를 반환

String substring(int startIndex) startIndex 로부터 시작하는 부분 문자열을 반환

String substring(int startIndex, int endIndex)

startIndex 와 endIndex 사이의 부분 문자열을 반환

String concat(String str) 현재의 문자열에 str 로 지정된 문자열을 결합

String replace(char original char replacement)

original 로 지정된 문자를 replacement 로 지정된문자로 대치

Page 27: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스String 클래스의 주요 메소드 -계속

메소드 이름 설명String trim() 문자열의 앞 뒤 공백 (whitespace) 을 제거static String valueOf(double num) num 을 문자열로 변환하여 반환static String valueOf(long num) num 을 문자열로 변환하여 반환static String valueOf(Object obj) 객체가 가지고 있는 데이터를 문자열로

변환하여 반환static String valueOf(char chars[]) 문자 배열을 문자열로 변환하여 반환static String valueOf(char chars[],int startIndex, int numChars)

문자 배열의 일부를 문자열로 변환하여 반환

String toLowerCase() 문자열을 모두 소문자로 변환하여 반환String toUpperCase() 문자열을 모두 대문자로 변환하여 반환

Page 28: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : StringExam1.java

예제 : StringExam2.java

Page 29: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.1 문자열의 길이

메소드 :

int length() : 문자열의 길이를 반환

char chars[] = {'K', 'o', 'r', 'e', 'a’};String s = new String(chars);System.out.println(s.length());

결과로 5 를 출력

Page 30: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.2 메소드를 이용하지 않는 문자열의 조작

New 를 사용하지 않고 문자열을 생성

String s2 = "2002 WorldCup Korea"; // 리터럴을 사용한 문자열 생성System.out.println("2002 Pusan Asiad".length()); // String 객체 대신에 직접 스트링 리터럴을 사용할 수 있다 . 16 을 출력

“+” 연산자를 이용하여 문자열을 결합

String age = "20";String s = " 그의 나이는 " + age + "세 입니다 .";System.out.println(s); // " 그의 나이는 20세입니다 ." 를 출력

Page 31: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

문자열이 아닌 다른 형의 데이터도 문자열과 결합

int age = 20;String s1 = " 그의 나이는 " + age + "세 입니다 ."; // int 형의 데이터를 문자열로 변환하여 결합 System.out.println(s1); // " 그의 나이는 20세입니다 ." 를 출력String s2 = "WorldCup " + 2 + 0 + 0 + 2; System.out.println(s2); // "WorldCup 2002" 를 출력String s3 = "WorldCup " + (2 + 0 + 0 + 2); // "WorldCup 4" 를 출력

Page 32: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.3 문자열에서의 문자 추출

메소드

char charAt(int i) : 문자열중에서 i 번째 문자를 반환void getChars(int sourceStart, int sourceEnd, char target[], int targetStart) : 문자열의 일부를 문자 배열로 (target[]) 제공 .

Page 33: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : StringExtract.java

Page 34: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.4 문자열 비교

메소드

boolean equals(Object str) : str 로 지정된 문자열과 현재의 문자열 이

같은지를 비교boolean equalsIgnoreCase(String str) : 문자열 비교시 대소문자무시

boolean startsWith(String str) : 현재의 문자열이 str 로 지정된 문자열로

시작하면 true, 아니면 false 를 반환boolean endsWith(String str) : 문자열이 str 로 끝나면 true, 아

니면 false

Page 35: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : EqualsExam.java

String s1 = "WorldCup Korea";System.out.println(s1.startsWith("Wor")); // true 출력System.out.println(s1.endsWith("rea")); // true 출력

Page 36: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.5 문자열 비교 - compareTo()

메소드

int compareTo(String str) : 현재의 문자열과 str 로 지정된 문자열을 비교하 여 현재의 문자열이 str 로 지정된 문자열보다 크면 양수 , 같으면 0, 작으면 음수값을 반환 . * 작다는 의미는 순서 (알파벳 ) 에 따라 앞에 온다는 의미

Page 37: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : StringCompare.java

Page 38: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.6 문자열 탐색

문자열내에서 지정된 문자나 부분 문자열을 찾아내기 위한 2 개의 메소드 제공 . 2 개의 메소드는 찾고자하는 문자나 부분 문자열의 위치를 반환

메소드

int indexOf(String str)int indexOf(int ch, int startIndex)int indexOf(String str, int startIndex)

int lastindexOf(String str)int lastindexOf(int ch, int startIndex)int lastindexOf(String str, int startIndex)

Page 39: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : IndexExam.java

Page 40: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.7 문자열의 변환

String 클래스의 객체로 생성된 문자열은 변환될 수 없다 . String 클래스는 현재의 문자열을 변환하여 새로운 문자열을 생성하는 메소드를 제공한다

메소드

String substring(int startIndex, int endIndex) : 부분 문자열을 반환String concat(String constr) : 결합된 문자열 반환String replace(char original, char replacement) : 치환된 문자열 반환String trim() : 문자열의 시작과 끝부분에 있는 공백이 제거된 문자열을 반환

Page 41: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : SubStringExam.java

Page 42: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스9.6.8 형 변환

다른 형의 데이터를 문자열로 변환하는 메소드

static String valueOf(double num)static String valueOf(long num)static String valueOf(Object obj)static String valueOf(char chars[])static String valueOf(char chars[], int startIndex, int numChars)

대소문자 변환 메소드 .

String toLowerCase()String toUpperCase()

Page 43: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.6 String 클래스

예제 : ConvertString.java

Page 44: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.7 StringBuffer 클래스

변할 수 있는 문자열을 가진다생성자

StringBuffer() : 묵시적으로 16 개의 문자를 저장할 수 있는 객체를 생성StringBuffer(int size) : size 크기의 객체를 생성StringBuffer(String str) : str 로 지정된 문자열과 추가로 16 개의 문자를 더 저장할 수 있는 객체를 생성

StringBuffer 객체는 객체의 크기가 변할 때 마다 메모리를 재 할당한다 (16 개의 문자를 저장할 수 있는 버퍼 단위로 )

Page 45: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.7 StringBuffer 클래스

StringBuffer 클래스의 메소드

메소드 이름 설명StringBuffer append(boolean b) b 를 현재의 문자열 끝에 첨부

StringBuffer append(char ch) ch 를 현재의 문자열 끝에 첨부

StringBuffer append(double d) d 를 현재의 문자열 끝에 첨부

StringBuffer append(float f) f 를 현재의 문자열 끝에 첨부StringBuffer append(int i) i 를 현재의 문자열 끝에 첨부StringBuffer append(long l) l 을 현재의 문자열 끝에 첨부StringBuffer append(Object obj) obj 가 가진 문자열을 현재의 문자열 끝에 첨부

StringBuffer append(String str) str 을 현재의 문자열 끝에 첨부

int capacity() 현재의 문자열 버퍼의 크기를 반환

char charAt(int i) i 번째 인덱스에 해당하는 문자를 반환

StringBuffer insert(int i, boolean b) i 번째 인덱스 전에 b 를 삽입

StringBuffer insert(int i, char ch) i 번째 인덱스 전에 ch 를 삽입

StringBuffer insert(int i, int j) i 번째 인덱스 전에 j 를 삽입

Page 46: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.7 StringBuffer 클래스

StringBuffer 클래스의 메소드 -계속

메소드 이름 설명

StringBuffer insert(int i, long l) i 번째 인덱스 전에 l 을 삽입

StringBuffer insert(int i, Object obj) i 번째 인덱스 전에 obj 를 삽입

StringBuffer insert(int i, String str) i 번째 인덱스 전에 str 을 삽입

int length() 문자열 버퍼에 있는 문자의 개수를 반환

StringBuffer reverse() 문자열을 역순의 문자열로 변환하여 반환

void setCharAt(int i, char ch) i 번째 문자를 ch 로 설정

void setLength(int len) 버퍼의 크기를 len 크기로 설정

String toString() 현재의 문자열을 String 객체로 반환String substring(int s, int e) 문자열의 s 부터 e 까지를 String 객체로

반환

Page 47: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.7 StringBuffer 클래스

예제 : StringBufferExam1.java

예제 : StringBufferExam2.java

Page 48: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.8 유틸리티 패키지 개요

object

AbstractCollection

AbstractList AbstractSequentialList LinkedList

ArrayList

Vector Stack

AbstractSet HashSet

TreeSet

AbstractMap

HashMap

TreeMap

LinkedHashMap

Arrays

BitSet

Calendar

GregorianCalendar

Date

Dictionary

Hashtable Properties

EventObject

Locale

Observable

Random

StringTokenizer

Scanner

Collections

LinkedHashSet

Collection Framework

Page 49: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.9 Random 클래스난수 발생 기능 제공

double, float, int, long 등 다양한 형태의 난수 제공

생성자

Random() // 현재의 시간을 초기값으로 하는 난수 발생Random(long seed) // seed 값을 초기값으로 하는 난수 발생

Page 50: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.9 Random 클래스Random 클래스의 주요 메소드

예제 : RandomExam.java

메소드 이름 설명

void nextBytes(byte buffer[]) buffer 를 난수로 채운다

float nextFloat() float 형의 난수를 반환

int nextInt() int 형의 난수를 반환

long getLong() long 형의 난수를 반환

double nextDouble() double 형의 난수를 반환

double nextGaussian() Gaussian 형의 난수를 double 값으로 반환

void setSeed(long newseed) 난수 발생기의 seed 값을 newseed 값으로 설정

Page 51: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.10 Arrays 클래스자바에서는 배열을 객체로 취급하기 위해 Arrays 클래스 제공주요 메소드

메소드 설명static List asList(Object[] a) 배열 a 를 List 형의 객체로 반환 static int binarySearch(int[] a, int key)

배열 a 에서 key 로 지정된 값을 찾아 반환 . boolean 을 제외한 7 가지 기본 자료형과 Object 형도 사용 가능 . 이 메소드는 배열 요소들이 정렬된 후에 사용해야 한다

static boolean equals(int[] a, int[] b)

배열 a 와 b 가 같은지를 비교하여 결과를 반환 . 8 개의 기본 자료형과 Object 형도 사용 가능

static void fill(int[] a, int value) 배열 a 의 모든 요소를 value 값으로 설정한다 . 8 개의 기본 자료형과 Object 형도 사용 가능

static void fill(int[] a, int from, int to, int value)

배열 a 의 from 부터 to까지를 value 값으로 설정한다 . 8 개의 기본 자료형과 Object 형도 사용 가능

static void sort(int[] a) 배열 a 의 요소들을 정렬 . boolean 을 제외한 7 가지 기본 자료형과 Object 형도 사용 가능

static void sort(int[] a, int from, int to)

배열 a 의 from 부터 to까지를 정렬 . boolean 을 제외한 7 가지 기본 자료형과 Object 형도 사용 가능

Page 52: Chap09  패키지와 주요 클래스

Chap09 패키지와 주요 클래스

9.10 Arrays 클래스

예제 : ArraysTest1.java