• 검색 결과가 없습니다.

Wrapper Class Integer

문서에서 29 4. 자료형 (Data Type) (페이지 27-35)

일반적으로 Integer 에서 작업할 때는 byte, int, long, double 과 같은 기본 데이터 유형을 사용합니다. 하지만 개발 단계에서는 기본 데이터 유형 대신 객체를 사용해야하는 경우가 있습니다. 이를 위해 Java 는 wrapper 클래스를 제공합니다.

모든 wrapper 클래스 (Integer, Long, Byte, Double, Float, Short)는 Integer 클래스의 서브 클래스입니다. Wrapper 클래스의 객체는 각각의 기본 데이터 유형을 포함합니다. 기본 데이터 유형을 객체로 변환하는 것을 boxing 이라고 합니다. wrapper 클래스를 사용하는 동안 기본 데이터 형식의 값을 wrapper 클래스의 생성자에 전달하면 됩니다. 그리고 wrapper 객체가 다시 기본 데이터 형식으로 다시 변환되는데 이 과정을 unboxing 이라고 합니다.

다음은 boxing 과 unboxing 에 대한 예제입니다.

예제

public class Myjava {

public static void main(String args[]) {

Integer z = 10; // int 를 Interger 객체로 boxing z = z + 100; // Integer 를 int 로 unboxing System.out.println(z);

} }

결과 110

z 에 정수 값이 지정되면 컴파일러는 z 가 정수 객체이므로 정수를 Boxing 합니다.

X 는 unboxed 이므로 나중에 정수를 더 추가할 수도 있습니다.

다음은 Integer 클래스의 모든 서브 클래스가 구현하는 인스턴스 메소드 목록입니다.

xxxValue ( ) Number 객체의 값을 xxx 데이터 유형으로 변환하여 반환합니다.

compardTo ( ) Number 객체를 인수와 비교 합니다.

equals ( ) 객체가 인수와 동일한 지 판단합니다.

valueOf ( ) 지정된 기본 데이터 형식값을 보유하는 Integer 객체를 반환합니다.

toString ( ) 지정된 int 또는 Integer 값을 나타내는 String 객체를 반환합니다.

parseInt ( ) 이 메소드는 특정 String 의 기본 데이터 유형을 가져 오는 데 사용됩니다.

abs ( ) 인수의 절댓값을 반환합니다.

ceil ( ) 인수보다 크거나 같은 가장 작은 정수를 구합니다

floor( ) 인수보다 작거나 같은 가장 큰 정수를 구합니다.

rint ( ) 인수에 값이 가장 가까운 정수를 반환합니다.

round ( ) 인수에 메소드의 반환 유형이 나타내는 가장 가까운 long 또는 int 를 반환합니다.

min ( ) 2 개의 인수 중 작은 것을 반환줍니다.

max ( ) 2 개의 인수 중에서 더 큰 것을 반환합니다.

exp ( ) 자연 대수의 밑수 e 를 인수의 제곱으로 반환합니다.

log ( ) 인수의 자연 대수를 반환합니다.

pow ( ) 첫 번째 인수의 값을 두 번째 인수로 제곱한 값을 반환합니다.

sqrt ( ) 인수의 제곱근을 반환합니다.

sin ( ) 지정된 double 값의 사인을 반환합니다.

cos ( ) 지정된 double 값의 코사인을 반환합니다.

tan ( ) 지정된 double 값의 탄젠트를 반환합니다.

asin( ) 지정된 double 값의 아크 사인을 반환합니다.

acos( ) 지정된 double 값의 아크 코사인을 반환합니다.

atan ( ) 지정된 double 값의 아크 탄젠트를 반환합니다.

atan2 ( ) 직각 좌표 (x, y)를 극좌표 (r, theta)로 변환하고 theta 를 반환합니다.

toDegrees ( ) 인수를 각도로 변환합니다.

toradians ( ) 인수를 라디안으로 변환합니다.

random ( ) 난수를 반환합니다.

Java – random( ) 메소드

이 메소드는 0.0 에서 1.0 사이의 난수를 생성하는 데 사용됩니다.

예제

public class Myjava {

public static void main(String args[]) { System.out.println( Math.random() );

System.out.println( Math.random() );

} }

결과

0.6770110353889172 0.8368732812415268

Character

일반적으로 문자로 작업할 때는 기본 데이터 유형 char 을 사용합니다.

char ch = 'a';

//char의 배열

char[] charArray ={ 'a', 'b', 'c', 'd', 'e' };

그러나 개발 중에는 기본 데이터 유형 대신 객체를 사용해야하는 상황이 있습니다. 이런 경우를 위해 Java 는 기본 데이터 유형 char 에 wrapper 클래스 Character 를 제공합니다.

//여기서 기본 char 'a'를 따옵니다.

//Character 객체 ch에 boxing 되었습니다.

Character ch = 'a';

//여기서 기본적인 'x'는 메소드 테스트를 위해 boxing 됩니다.

//변환값은 char 'c'로 unboing됩니다.

char c = test('x');

아래는 Character 클래스의 모든 서브 클래스가 구현하는 중요한 인스턴스 메소드 리스트 입니다.

isLetter ( ) 지정된 char 가 문자인지 판별합니다.

isDigit ( ) 지정된 char 값이 숫자인지 판별합니다

isWhitespace ( ) 지정된 char 값이 공백인지 판별합니다.

isUpperCase ( ) 지정된 char 값이 대문자인지 여부를 판별합니다.

isLowerCase ( ) 지정된 char 값이 소문자인지 여부를 판별합니다.

toUpperCase ( ) 지정된 char 값의 대문자 형식을 반환합니다.

toLowerCase ( ) 지정된 char 값의 소문자 형식을 반환합니다.

toString ( ) 지정된 문자 값을 나타내는 String 객체를 반환합니다. 이 객체는 한 문자로 구성된 문자열입니다.

Java – toUpperCase( ) , toLowerCase( ) 메소드 예제

public class Myjava {

public static void main(String args[]) {

System.out.println(Character.toUpperCase('a'));

System.out.println(Character.toUpperCase('A'));

System.out.println(Character.toLowerCase('b'));

System.out.println(Character.toLowerCase('B'));

}

String greeting = "안녕하세요!";

다른 객체와 마찬가지로 new 키워드와 생성자를 사용하여 String 객체를 만들 수 있습니 다. String 클래스에는 문자 배열과 같은 소스를 사용하여 문자열의 초기 값을 제공할 수 있는 11 개의 생성자가 있습니다.

예제

public class StringDemo {

public static void main(String args[]) {

char[] helloArray = { '안', '녕', '하', '세', '요', '.' };

예제

public class StringDemo {

public static void main(String args[]) {

String strlength = "문자열 길이가 얼마나 될까요";

int len = strlength.length();

System.out.println( "문자열 길이: " + len );

} }

결과

문자열 길이: 15

 두 문자열 붙이기

String 클래스에는 두 개의 문자열을 연결하는 메소드가 포함되어 있습니다.

다음과 같이 문자열과 함께 concat() 메소드를 사용할 수 있습니다.

"독도는 ".concat("우리땅");

하지만 대부분 +를 이용하여 문자열들을 연결합니다.

예제

public class StringDemo {

public static void main(String args[]) { String string1 = "통신 ";

System.out.println("정보 " + string1 + "공학");

} }

결과

정보 통신 공학

다음은 String 클래스가 지원하는 메소드 목록입니다.

char charAt(int index) 지정된 인덱스의 문자를 반환 int compareTo(Object o) 문자열을 다른 객체와 비교 int compareTo(String another

String) 두 문자열을 사전순으로 비교 int compareToIgnoreCase(String

str) 대소 문자 차이를 무시하고 사전순으로 두 문자

열을 비교

String concat(String str) 지정된 문자열을 문자열의 끝에 연결

boolean

contentEquals(StringBuffer sb) 문자열이 지정된 StringBuffer 와 같은 문자열을 나타내는 경우에 한정해 true 를 리턴 boolean equals(Object anObject) 문자열을 지정된 객체와 비교

boolean equalsIgnoreCase(String

void getChars(int srcBegin, int srcEnd, char[] dst, int

dstBegin)

문자열의 문자를 대상 문자 배열로 복사

int hashCode() 문자열의 해시코드를 반환

int indexOf(int ch) 문자열 내에서 지정된 문자가 처음 나타나는 인 덱스 반환

int indexOf(int ch, int

fromIndex) 지정된 인덱스에서 검색을 시작하여 지정된 문자 가 처음 나타나는 이 문자열 내의 인덱스 반환 int indexOf(String str) 지정된 문자열이 처음 나타나는 문자열 내의 인

덱스 반환 int indexOf(String str, int

fromIndex) 지정된 인덱스에서 시작하여 지정된 부분 문자열 이 처음 나타나는 문자열 내의 인덱스 반환 String intern() 문자열 객체의 표준 표현 반환

int lastIndexOf(int ch) 이 문자열 내에서 지정된 문자의 마지막 항목 인 덱스 반환

int lastIndexOf(int ch, int fromIndex)

지정된 문자부터 마지막으로 검색하면서 지정된 문자가 마지막으로 나타나는 문자열 내의 인덱스 반환

int lastIndexOf(String str) 문자열 내에서 지정된 부분 문자열의 가장 오른 쪽에 나오는 인덱스 반환

int lastIndexOf(String str, int fromIndex)

ignoreCase, int toffset, String other, int ooffset, int len)

두 문자열 영역이 같은지 테스트

boolean regionMatches(int toffset, String other, int

ooffset, int len)

문자를 소문자로 변환 String toString() 객체가 그대로 반환

String toUpperCase() 문자열의 모든 문자를 대문자로 변환 String toUpperCase(Locale

locale) 지정된 로케일 규칙을 사용하여 문자열의 모든 문자를 대문자로 변환

String trim() 선행 및 후행 공백이 생략된 문자열 사본을 반환 static String valueOf(primitive

data type x) 전달된 데이터 형식 인수의 문자열 표현을 반환

실습) 𝑎𝑏를 계산하는 pow(int a, int b) 함수를 재귀적 함수를 이용해서 작성하라.

단 b 는 양의 정수이다.

문서에서 29 4. 자료형 (Data Type) (페이지 27-35)

관련 문서