<Java์ ์ ์ ๊ฐ์ 3ํ>์ ๊ธฐ๋ณธ์ผ๋ก ๋ฐฐ์ด ๋ด์ฉ์ ๋๋ค.
๋ชฉ์ฐจ
- java.langํจํค์ง๋?
- Object ํด๋์ค
- String ํด๋์ค
- StringBufferํด๋์ค์ StringBuilderํด๋์ค
- Math ํด๋์ค
- Wrapper ํด๋์ค
java.langํจํค์ง๋?
JAVA์ lang ํจํค์ง๋ JAVA ํ๋ก๊ทธ๋๋ฐ์ ํ์ํ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ํด๋์ค๋ค์ด ๋ชจ์ฌ์๋ ํจํค์ง์ด๋ค. import๊ตฌ๋ฌธ์ผ๋ก ํธ์ถํด์ผ ์ฌ์ฉํ ์ ์๋ ๋ค๋ฅธ ํจํค์ง๋ค๊ณผ๋ ๋ฌ๋ฆฌ langํจํค์ง๋ import๊ตฌ๋ฌธ ์์ด๋ ์๋์ผ๋ก ํ๋ก๊ทธ๋จ์ ํฌํจ๋๋ค. langํจํค์ง์ ํฌํจ๋๋ ํด๋์ค๋ ๋ฐ๋ก ๋ช ์ํ์ง ์์๋ ์ต์์ ํด๋์ค๊ฐ ๋๋ค.
- java.lang ํจํค์ง์ ํด๋์ค ๊ตฌ์กฐ๋[ langํจํค์ง์ ๋ชจ๋ ํด๋์ค ๋ณด๊ธฐ : JAVA API DOC : Java.lang ]
1. Objectํด๋์ค
- Object ํด๋์ค๋ ๋ชจ๋ ์๋ฐ ํด๋์ค์ ์ต๊ณ ์กฐ์ ํด๋์ค์ด๋ค. ๋ฐ๋ผ์ ์๋ฐ์ ๋ชจ๋ ํด๋์ค๋ Object ํด๋์ค์ ๋ชจ๋ ๋ฉ์๋๋ฅผ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ค.
- Object ํด๋์ค๋ ํ๋๋ฅผ ๊ฐ์ง์ง ์์ผ๋ฉฐ, ์ด 11๊ฐ์ ๋ฉ์๋๋ง์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
๋ฉ์๋ |
์ค ๋ช |
protected Object clone() | ๊ฐ์ฒด ์์ ์ ๋ณต์ฌ๋ณธ ๋ฐํ (๊น์ ๋ณต์ฌ) |
boolean equals(Object obj) | ๋ ๊ฐ์ ๊ฐ์ฒด๊ฐ ๊ฐ์์ง ๋น๊ตํ์ฌ ๊ฐ์ผ๋ฉด true๋ฅผ, ๊ฐ์ง ์์ผ๋ฉด false๋ฅผ ๋ฐํ |
protected void finalize() | ๊ฐ๋น์ง ์ปฌ๋ ์ ์ง์ ์ ๊ฐ์ฒด์ ๋ฆฌ์์ค๋ฅผ ์ ๋ฆฌํ ๋ ํธ์ถ |
Class getClass() | ๊ฐ์ฒด์ ํด๋์คํ์ ๋ฐํ |
int hashCode() | ์ฐพ์ ๊ฐ์ ์ ๋ ฅํ๋ฉด ์ ์ฅ๋ ์์น๋ฅผ ์๋ ค์ฃผ๋ ํด์์ฝ๋๋ฅผ ๋ฐํ |
String toString() | ํ์ฌ ๊ฐ์ฒด์ ๋ฌธ์์ด์ ๋ฐํ |
void notify() | wait๋ ์ค๋ ๋ ์คํ์ ์ฌ๊ฐํ ๋ ํธ์ถ |
void notifyAll() | wait๋ ๋ชจ๋ ์ค๋ ๋ ์คํ์ ์ฌ๊ฐํ ๋ ํธ์ถ |
void wait() void wait(long timeout) void wait(long timeout, int nanos) |
์ค๋ ๋๋ฅผ ์ผ์์ ์ผ๋ก ์ค์งํ ๋ ํธ์ถ ์ฃผ์ด์ง ์๊ฐ๋งํผ ์ค๋ ๋๋ฅผ ์ผ์์ ์ผ๋ก ์ค์งํ ๋ ํธ์ถ ์ฃผ์ด์ง ์๊ฐ๋งํผ ์ค๋ ๋๋ฅผ ์ผ์์ ์ผ๋ก ์ค์งํ ๋ ํธ์ถ |
1-1) ๊ณต๋ฒฝ ๋ฐํ ํ์ covariant return type
- ์ค๋ฒ๋ผ์ด๋ฉ์ ์๋ ์ด๋ฆ๊ณผ ๋งค๊ฐ๋ณ์ ๊ทธ๋ฆฌ๊ณ ๋ฐํํ์ ์ด ์ ๋ถ ๊ฐ์์ผ ํ์ง๋ง, covariant return tyoe์ ์ฌ์ฉํ๋ฉด ์กฐ์ ๋ฉ์๋์ ๋ฆฌํด ํ์ ์ ์๋ธ ํด๋์ค(์์ ํด๋์ค)์ ํ์ ์ผ๋ก์ ๋ณ๊ฒฝ์ด ํ์ฉ๋๋ค.
- ๋ฐฐ์ด ๋๋ java.utilํจํค์ง์ ํด๋์ค๋ฅผ ๋ณต์ ํ ๋ ๋ฒ๊ฑฐ๋กญ์ง ์์ ํ๋ณํ์ด ๊ฐ๋ฅํ๋ค.
1-2) ์์ ๋ณต์ฌ์ ๊น์ ๋ณต์ฌ
- ์์ ๋ณต์ฌ(Shallow Copy) : ์ฐธ์กฐ์ ์ํ ๋ณต์ฌ๋ก ์๋ณธ์ด๋ ๋ณต์ฌ๋ ๊ฒ ๋ ์ค ํ๋๋ง ๋ณ๊ฒฝํด๋ ๋น์ฐํ๊ฒ ๋ ๋ค ๋ณ๊ฒฝ๋๋ค.
public class Test {
public static void main(String[] args) {
List<Integer> a = new ArrayList<>();
a.add(1);
a.add(2);
List<Integer> b = a;
b.add(4);
System.out.println(a);
System.out.println(b);
}
}
- ๊น์ ๋ณต์ฌ(Deep Copy)
- ๊น์ ๋ณต์ฌ๋ ์๋ณธ๊ณผ ๋๊ฐ์ ๊ฐ์ ๊ฐ์ง ์๋ก์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด ๋ด๋ ๋ณต์ฌ์ด๋ค.
- ๊น์ ๋ณต์ฌ๋ฅผ ๊ตฌํํ ๋๋ Object์ clone ๋ฉ์๋๋ฅผ ์ด์ฉํ๊ฑฐ๋, ์ง์ ๋ณต์ฌ๊ธฐ๋ฅ์ ํ๋ ์์ฑ์๋ ๋ก์ง์ ๋ง๋ค๋ฉด ๋๋ค.
public class Test {
public static void main(String[] args) {
List<Integer> a = new ArrayList<>();
a.add(1);
a.add(2);
List<Integer> b = new ArrayList<>(a);
b.add(4);
System.out.println(a);
System.out.println(b);
}
}
2. String ํด๋์ค
- String ํด๋์ค์๋ ๋ฌธ์์ด๊ณผ ๊ด๋ จ๋ ์์ ์ ํ ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๋ค์ํ ๋ฉ์๋๊ฐ ํฌํจ๋์ด ์๋ค.
- ๋ถ๋ณ ํด๋์ค(immutable class) : String ์ธ์คํด์ค๋ ํ ๋ฒ ์์ฑ๋๋ฉด ๊ทธ ๊ฐ์ ์ฝ๊ธฐ๋ง ํ ์ ์๊ณ , ๋ณ๊ฒฝํ ์๋ ์๋ค.
- ์ฆ, ๊ธฐ์กด ๋ฌธ์์ด์ ๋ด์ฉ์ด ๋ณ๊ฒฝ๋๋ ๊ฒ์ด ์๋๋ผ ์๋ก์ด String ์ธ์คํด์ค๊ฐ ์์ฑ๋๋ ๊ฒ์ด๋ค.
๋ฉ์๋ | ์ค๋ช |
char charAt(int index) | ํด๋น ๋ฌธ์์ด์ ํน์ ์ธ๋ฑ์ค์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ๋ฐํํจ. |
int compareTo(String str) | ํด๋น ๋ฌธ์์ด์ ์ธ์๋ก ์ ๋ฌ๋ ๋ฌธ์์ด๊ณผ ์ฌ์ ํธ์ฐฌ ์์ผ๋ก ๋น๊ตํจ. |
int compareToIgnoreCase(String str) | ํด๋น ๋ฌธ์์ด์ ์ธ์๋ก ์ ๋ฌ๋ ๋ฌธ์์ด๊ณผ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์๊ณ ์ฌ์ ํธ์ฐฌ ์์ผ๋ก ๋น๊ตํจ. |
String concat(String str) | ํด๋น ๋ฌธ์์ด์ ๋ค์ ์ธ์๋ก ์ ๋ฌ๋ ๋ฌธ์์ด์ ์ถ๊ฐํ ์๋ก์ด ๋ฌธ์์ด์ ๋ฐํํจ. |
int indexOf(int ch) int indexOf(String str) |
ํด๋น ๋ฌธ์์ด์์ ํน์ ๋ฌธ์๋ ๋ฌธ์์ด์ด ์ฒ์์ผ๋ก ๋ฑ์ฅํ๋ ์์น์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํจ. |
int indexOf(int ch, int fromIndex) int indexOf(String str, int fromIndex) |
ํด๋น ๋ฌธ์์ด์์ ํน์ ๋ฌธ์๋ ๋ฌธ์์ด์ด ์ ๋ฌ๋ ์ธ๋ฑ์ค ์ดํ์ ์ฒ์์ผ๋ก ๋ฑ์ฅํ๋ ์์น์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํจ. |
int lastIndexOf(int ch) | ํด๋น ๋ฌธ์์ด์์ ํน์ ๋ฌธ์๊ฐ ๋ง์ง๋ง์ผ๋ก ๋ฑ์ฅํ๋ ์์น์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํจ. |
int lastIndexOf(int ch, int fromIndex) | ํด๋น ๋ฌธ์์ด์์ ํน์ ๋ฌธ์๊ฐ ์ ๋ฌ๋ ์ธ๋ฑ์ค ์ดํ์ ๋ง์ง๋ง์ผ๋ก ๋ฑ์ฅํ๋ ์์น์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํจ. |
String[] split(String regex) | ํด๋น ๋ฌธ์์ด์ ์ ๋ฌ๋ ์ ๊ท ํํ์(regular expression)์ ๋ฐ๋ผ ๋๋ ์ ๋ฐํํจ. |
String substring(int beginIndex) | ํด๋น ๋ฌธ์์ด์ ์ ๋ฌ๋ ์ธ๋ฑ์ค๋ถํฐ ๋๊น์ง๋ฅผ ์๋ก์ด ๋ฌธ์์ด๋ก ๋ฐํํจ. |
String substring(int begin, int end) | ํด๋น ๋ฌธ์์ด์ ์ ๋ฌ๋ ์์ ์ธ๋ฑ์ค๋ถํฐ ๋ง์ง๋ง ์ธ๋ฑ์ค๊น์ง๋ฅผ ์๋ก์ด ๋ฌธ์์ด๋ก ๋ฐํํจ. |
String toLowerCase() | ํด๋น ๋ฌธ์์ด์ ๋ชจ๋ ๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ณํํจ. |
String toUpperCase() | ํด๋น ๋ฌธ์์ด์ ๋ชจ๋ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก ๋ณํํจ. |
String trim() | ํด๋น ๋ฌธ์์ด์ ๋งจ ์๊ณผ ๋งจ ๋ค์ ํฌํจ๋ ๋ชจ๋ ๊ณต๋ฐฑ ๋ฌธ์๋ฅผ ์ ๊ฑฐํจ. |
length() | ํด๋น ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ๋ฐํํจ. |
isEmpty() | ํด๋น ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 0์ด๋ฉด true๋ฅผ ๋ฐํํ๊ณ , ์๋๋ฉด false๋ฅผ ๋ฐํํจ. |
2-1) ๋ฌธ์์ด ๋ฆฌํฐ๋ด
- ์๋ฐ ์์คํ์ผ์ ํฌํจ๋ ๋ชจ๋ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ์ปดํ์ผ ์์ ํด๋์ค ํ์ผ์ ์ ์ฅ๋๋ค. ์ด ๋ ๊ฐ์ ๋ด์ฉ์ ๋ฌธ์์ด ๋ฆฌํฐ๋ด์ ํ๋ฒ๋ง ์ ์ฅ๋๋ค.
- ๋ฐ๋ผ์ ๊ฐ์ ๋ด์ฉ์ ์ธ์คํด์ค(๋ฌธ์์ด ๋ฆฌํฐ๋ด)๋ ํ๋ฒ๋ง ์์ฑํด ๊ณต์ ํ ์ ์๋ค.
3. StringBufferํด๋์ค์ StringBuilderํด๋์ค
- ๊ฐ๋ณ ํด๋์ค(mutable class) : String ํด๋์ค์ ์ธ์คํด์ค๋ immutable object์ด์ง๋ง, StringBuffer ํด๋์ค์ ์ธ์คํด์ค๋ ๊ทธ ๊ฐ์ ๋ณ๊ฒฝํ ์๋ ์๊ณ , ์ถ๊ฐํ ์๋ ์๋ค.
- ์ด๋ฅผ ์ํด StringBuffer ํด๋์ค๋ ๋ด๋ถ์ ์ผ๋ก ๋ฒํผ(buffer)๋ผ๊ณ ํ๋ ๋ ๋ฆฝ์ ์ธ ๊ณต๊ฐ์ ๊ฐ์ง๋ค. ๋ฒํผ ํฌ๊ธฐ์ ๊ธฐ๋ณธ๊ฐ์ 16๊ฐ์ ๋ฌธ์๋ฅผ ์ ์ฅํ ์ ์๋ ํฌ๊ธฐ์ด๋ฉฐ, ์์ฑ์๋ฅผ ํตํด ๊ทธ ํฌ๊ธฐ๋ฅผ ๋ณ๋๋ก ์ค์ ํ ์๋ ์๋ค.
- StringBuffer ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฌธ์์ด์ ๋ฐ๋ก ์ถ๊ฐํ ์ ์์ผ๋ฏ๋ก, ๊ณต๊ฐ์ ๋ญ๋น๋ ์์ผ๋ฉฐ ์๋๋ ๋งค์ฐ ๋นจ๋ผ์ง๋๋ค. (String ์ธ์คํด์ค๋ ์๋ก์ด ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ฏ๋ก ๊ณต๊ฐ์ด ๋ญ๋น๋๊ณ , ์๋๋ ๋๋ ค์ง๋ค.)
๋ฉ์๋ | ์ค๋ช |
StringBuffer append(boolean b) StringBuffer append(char c) StringBuffer append(char[] str) StringBuffer append(CharSequence s) StringBuffer append(double d) StringBuffer append(float f) StringBuffer append(int i) StringBuffer append(long lng) StringBuffer append(Object obj) StringBuffer append(String str) StringBuffer append(StringBuffer sb) |
์ธ์๋ก ์ ๋ฌ๋ ๊ฐ์ ๋ฌธ์์ด๋ก ๋ณํํ ํ, ํด๋น ๋ฌธ์์ด์ ๋ง์ง๋ง์ ์ถ๊ฐํจ. |
int capacity() | ํ์ฌ ๋ฒํผ ํฌ๊ธฐ๋ฅผ ๋ฐํํจ. |
StringBuffer delete(int start, int end) | ์ ๋ฌ๋ ์ธ๋ฑ์ค์ ํด๋นํ๋ ๋ถ๋ถ ๋ฌธ์์ด์ ํด๋น ๋ฌธ์์ด์์ ์ ๊ฑฐํจ. |
StringBuffer deleteCharAt(int index) | ์ ๋ฌ๋ ์ธ๋ฑ์ค์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ํด๋น ๋ฌธ์์ด์์ ์ ๊ฑฐํจ. |
StringBuffer insert(int offset, boolean b) StringBuffer insert(int offset, char c) StringBuffer insert(int offset, char[] str) StringBuffer insert(int offset, CharSequence s) StringBuffer insert(int offset, double d) StringBuffer insert(int offset, float f) StringBuffer insert(int offset, int i) StringBuffer insert(int offset, long lng) StringBuffer insert(int offset, Object obj) StringBuffer insert(int offset, String str) |
์ธ์๋ก ์ ๋ฌ๋ ๊ฐ์ ๋ฌธ์์ด๋ก ๋ณํํ ํ, ํด๋น ๋ฌธ์์ด์ ์ง์ ๋ ์ธ๋ฑ์ค ์์น์ ์ถ๊ฐํจ. |
StringBuffer reverse() | ํด๋น ๋ฌธ์์ด์ ์ธ๋ฑ์ค๋ฅผ ์ญ์์ผ๋ก ์ฌ๋ฐฐ์ดํจ. |
3-1) StringBuilder
StringBuffer | StringBuilder | |
๊ณตํต์ | - mutable class - ๋ฌธ์์ด ์ฐ์ฐ์ด ์์ฃผ ์์ ๋ String๋ณด๋ค ์ฑ๋ฅ์ด ์ข๋ค. |
|
์ฐจ์ด์ | - thread-safeํ๋ค(๋ฉํฐ์ค๋ ๋ํ๊ฒฝ์์ synchronizedํค์๋๊ฐ ๊ฐ๋ฅํ๋ฏ๋ก ๋๊ธฐํ๊ฐ ๊ฐ๋ฅํจ.) | - thread-safeํ์ง ์๋ค.(๋ฉํฐ์ค๋ ๋ ํ๊ฒฝ์์๋ ์ ํฉํ์ง ์๋ค.) - ๋๊ธฐํ๋ฅผ ๊ณ ๋ คํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฑ๊ธ์ค๋ ๋ ํ๊ฒฝ์์ StringBuffer์ ๋นํด ์ฐ์ฐ์ฒ๋ฆฌ๊ฐ ๋น ๋ฅด๋ค. |
์ ์ ํ ๊ฒฝ์ฐ | multi-thread ํ๊ฒฝ | single-thread ํ๊ฒฝ |
4. Math ํด๋์ค
- Math ํด๋์ค๋ ์ํ์์ ์์ฃผ ์ฌ์ฉํ๋ ์์๋ค๊ณผ ํจ์๋ค์ ๋ฏธ๋ฆฌ ๊ตฌํํด ๋์ ํด๋์ค
- Math ํด๋์ค์ ๋ชจ๋ ๋ฉ์๋๋ ํด๋์ค ๋ฉ์๋(static method)์ด๋ฏ๋ก, ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ์๊ณ ๋ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ค.
๋ฉ์๋ | ์ค๋ช |
static double random() | 0.0 ์ด์ 1.0 ๋ฏธ๋ง์ ๋ฒ์์์ ์์์ doubleํ ๊ฐ์ ํ๋ ์์ฑํ์ฌ ๋ฐํํจ. |
static double abs(double a) static double abs(float a) static double abs(int a) static double abs(long a) |
์ ๋ฌ๋ ๊ฐ์ด ์์์ด๋ฉด ๊ทธ ๊ฐ์ ์ ๋๊ฐ์ ๋ฐํํ๋ฉฐ, ์ ๋ฌ๋ ๊ฐ์ด ์์์ด๋ฉด ์ธ์๋ฅผ ๊ทธ๋๋ก ๋ฐํํจ. |
static double ceil(double a) | ์ ๋ฌ๋ doubleํ ๊ฐ์ ์์ ๋ถ๋ถ์ด ์กด์ฌํ๋ฉด ์์ ๋ถ๋ถ์ ๋ฌด์กฐ๊ฑด ์ฌ๋ฆฌ๊ณ ๋ฐํํจ. |
static double floor(double a) | ์ ๋ฌ๋ doubleํ ๊ฐ์ ์์ ๋ถ๋ถ์ด ์กด์ฌํ๋ฉด ์์ ๋ถ๋ถ์ ๋ฌด์กฐ๊ฑด ๋ฒ๋ฆฌ๊ณ ๋ฐํํจ. |
static long round(double a) static int round(float a) |
์ ๋ฌ๋ ๊ฐ์ ์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฐ์ฌ๋ฆผํ ์ ์๋ฅผ ๋ฐํํจ. |
static double rint(double a) | ์ ๋ฌ๋ doubleํ ๊ฐ๊ณผ ๊ฐ์ฅ ๊ฐ๊น์ด ์ ์๊ฐ์ doubleํ์ผ๋ก ๋ฐํํจ. |
static double max(double a, double b) static float max(float a, float b) static long max(long a, long b) static int max(int a, int b) |
์ ๋ฌ๋ ๋ ๊ฐ์ ๋น๊ตํ์ฌ ํฐ ๊ฐ์ ๋ฐํํจ. |
static double min(double a, double b) static float min(float a, float b) static long min(long a, long b) static int min(int a, int b) |
์ ๋ฌ๋ ๋ ๊ฐ์ ๋น๊ตํ์ฌ ์์ ๊ฐ์ ๋ฐํํจ. |
static double pow(double a, double b) | ์ ๋ฌ๋ ๋ ๊ฐ์ doubleํ ๊ฐ์ ๊ฐ์ง๊ณ ์ ๊ณฑ ์ฐ์ฐ์ ์ํํ์ฌ, ab์ ๋ฐํํจ. |
static double sqrt(double a) | ์ ๋ฌ๋ doubleํ ๊ฐ์ ์ ๊ณฑ๊ทผ ๊ฐ์ ๋ฐํํจ. |
static double sin(double a) static double cos(double a) static double tan(double a) |
์ ๋ฌ๋ doubleํ ๊ฐ์ ํด๋นํ๋ ๊ฐ๊ฐ์ ์ผ๊ฐ ํจ์ซ๊ฐ์ ๋ฐํํจ. |
static double toDegrees(double angrad) | ํธ๋๋ฒ์ ๋ผ๋์ ๊ฐ์ ๋๋ต์ ์ธ ์ก์ญ๋ถ๋ฒ์ ๊ฐ๋ ๊ฐ์ผ๋ก ๋ณํํจ. |
static double toRaidans(double angdeg) | ์ก์ญ๋ถ๋ฒ์ ๊ฐ๋ ๊ฐ์ ๋๋ต์ ์ธ ํธ๋๋ฒ์ ๋ผ๋์ ๊ฐ์ผ๋ก ๋ณํํจ. |
5. Wrapper ํด๋์ค
์๋ฐ์์๋ 8๊ฐ์ ๊ธฐ๋ณธ ํ์ ์ ๊ฐ์ฒด๋ก ์ง์ ํ์ง ์์์ง๋ง, ๊ธฐ๋ณธ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ์ทจ๊ธํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
8๊ฐ์ ๊ธฐ๋ณธ ํ์ ์ ํด๋นํ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ํฌ์ฅํด ์ฃผ๋ ํด๋์ค๋ฅผ ๋ํผ ํด๋์ค(Wrapper class)๋ผ๊ณ ํ๋ค.
- ๋งค๊ฐ๋ณ์๋ก ๊ฐ์ฒด๊ฐ ์๊ตฌ ๋ ๋.
- ๊ธฐ๋ณธํ ๊ฐ์ด ์๋ ๊ฐ์ฒด๋ก ์ ์ฅํด์ผ ํ ๋.
- ๊ฐ์ฒด๊ฐ์ ๋น๊ต๊ฐ ํ์ํ ๋. ๋ฑ
5-1) ์คํ ๋ฐ์ฑ(AutoBoxing)๊ณผ ์คํ ์ธ๋ฐ์ฑ(AutoUnBoxing)
JDK 1.5๋ถํฐ๋ ๋ฐ์ฑ๊ณผ ์ธ๋ฐ์ฑ์ด ํ์ํ ์ํฉ์์ ์๋ฐ ์ปดํ์ผ๋ฌ๊ฐ ์ด๋ฅผ ์๋์ผ๋ก ์ฒ๋ฆฌํด ์ค๋ค.
Integer num = new Integer(17); // ๋ฐ์ฑ
int n = num.intValue(); // ์ธ๋ฐ์ฑ
System.out.println(n);
Character ch = 'X'; // Character ch = new Character('X'); : ์คํ ๋ฐ์ฑ
char c = ch; // char c = ch.charValue(); : ์คํ ์ธ๋ฐ์ฑ
System.out.println(c);
--์คํ ๊ฒฐ๊ณผ--
17
X
- ๋ํผ ํด๋์ค์ธ Interger ํด๋์ค์ Character ํด๋์ค์๋ ๊ฐ๊ฐ ์ธ๋ฐ์ฑ์ ์ํ intValue() ๋ฉ์๋์ charValue() ๋ฉ์๋๊ฐ ํฌํจ๋์ด ์๋ค.
- ์คํ ๋ฐ์ฑ์ ์ด์ฉํ๋ฉด new ํค์๋๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ ์๋์ผ๋ก Character ์ธ์คํด์ค๋ฅผ ์์ฑํ ์ ์๊ณ , ๋ฐ๋๋ก charValue() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋, ์คํ ์ธ๋ฐ์ฑ์ ์ด์ฉํ์ฌ ์ธ์คํด์ค์ ์ ์ฅ๋ ๊ฐ์ ๋ฐ๋ก ์ฐธ์กฐํ ์ ์๋ค.
'๐ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ์์ ์ ์ฉํ ํด๋์ค๋ค (0) | 2020.06.14 |
---|---|
์๋ฐ, ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(3) (0) | 2020.06.09 |
์๋ฐ, ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(2) (0) | 2020.06.09 |
์๋ฐ, ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(1) (0) | 2020.06.04 |
switch/case๋ฌธ (0) | 2020.06.04 |