Programming Language/Java

Java 9์ผ์ฐจ ๊ณต๋ถ€(Java API[Wrapper(ํฌ์žฅ) Class, Math Class])

chaerlo127 2022. 2. 26. 21:04
728x90

- Wrapper Class (ํฌ์žฅ ํด๋ž˜์Šค)

์ž๋ฐ”๋Š” ๊ธฐ๋ณธ ํƒ€์ž… (byte, char, short, int, long, float, double, boolean)์˜ ๊ฐ’์„ ๊ฐ–๋Š” ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฐ์ฒด๋ฅผ ํฌ์žฅ ๊ฐ์ฒด๋ผ๊ณ  ํ•œ๋‹ค.( ๊ธฐ๋ณธ ํƒ€์ž… ๊ฐ’์„ ๋‚ด๋ถ€์— ๋‘๊ณ  ํฌ์žฅ )

 

ํฌ์žฅ ํ•˜๊ณ  ์žˆ๋Š” ๊ธฐ๋ณธ ํƒ€์ž… ๊ฐ’์€ ์™ธ๋ถ€์—์„œ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค. ๋งŒ์•ฝ ๋‚ด๋ถ€์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ƒˆ๋กœ์šด ํฌ์žฅ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค.

 

1. ๋ฐ•์‹ฑ(Boxing)๊ณผ ์–ธ๋ฐ•์‹ฑ(Unboxing)

 - ๋ฐ•์‹ฑ: ๊ธฐ๋ณธ ํƒ€์ž…์˜ ๊ฐ’์„ ํฌ์žฅ ๊ฐ์ฒด๋กœ ๋งŒ๋“œ๋Š” ๊ณผ์ •

 - ์–ธ๋ฐ•์‹ฑ: ํฌ์žฅ ๊ฐ์ฒด์—์„œ ๊ธฐ๋ณธ ํƒ€์ž…๊ณผ ๊ฐ’์„ ์–ป์–ด๋‚ด๋Š” ๊ณผ์ •

//boxing
Byte obj = new Byte(10); //  ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Byte obj = new Byte("10");
Charactor obj = new Charactor('๊ฐ€');
Short obj =new Short(100); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Short obj = new short("100");
Integer obj = new Integer(1000); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Integer obj = new Integer("1000");
Long obj = new Long(10000); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Long obj = new Long(10000);
Float obj = new Float(2.5F); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Float obj = new Float("2.5F");
Double obj = new Double(3.5); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Double obj = new Double("3.5");
Boolean obj = new Boolean(true); // ๋ฌธ์ž์—ด์„ ์ค„ ๊ฒฝ์šฐ Boolean obj = new Boolean("true");
 // ์ƒ์„ฑ์ž๋ฅผ ์ด์šฉํ•˜์ง€ ์•Š์•„๋„ ํฌ์žฅ ํด๋ž˜์Šค๋งˆ๋‹ค ๊ฐ–๊ณ  ์žˆ๋Š” ์ •์  valueOf() ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉ
Integer obj = Integer.valueOf(1000);


//unboxing 
byte a = obj.byteValue();
char a = obj.charValue();
short a = obj.bshortValue();
int a = obj.intValue();
long a = obj.longValue();
float a = obj.floatValue();
double a = obj.doubleValue();
boolean a = obj.booleanValue();

//์ž๋™ ๋ฐ•์‹ฑ
Integer obj = 10;

//์ž๋™ ์–ธ๋ฐ•์‹ฑ
Integer obj = new Integer(200);
int value = obj; // ์ž๋™ ์–ธ๋ฐ•์‹ฑ
int value = obj + 10; // ์ž๋™ ์–ธ๋ฐ•์‹ฑ

 

 Wrapper(ํฌ์žฅ) ํด๋ž˜์Šค์˜ ์˜ˆ์‹œ๋ฅผ ๋“ค์ž๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

	public static void main(String[] args) {
		Integer obj = new Integer(100);
		Integer obj2 = new Integer("100");
		Integer obj3 = Integer.valueOf(100);
		
		int unboxing1 = obj.intValue();
		int unboxing2 = obj2.intValue();
		int unboxing3 = obj3.intValue();
		
		System.out.println(unboxing1);
		System.out.println(unboxing2);
		System.out.println(unboxing3);
	}

 

2. ๋ฌธ์ž์—ด ๊ธฐ๋ณธํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜

 

Java 1์ผ์ฐจ ๊ณต๋ถ€(์ž๋ฐ” ๊ธฐ์ดˆ, ๋ณ€์ˆ˜, ํƒ€์ž…๋ณ€ํ™˜)

์š”์ฆˆ์Œ ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ณต๋ถ€ ๋“ฑ์„ ์ง„ํ–‰ํ•˜๋ฉด์„œ Java๋ฅผ ๊ณต๋ถ€๋ฅผ ํ•˜์ง€ ์•Š์•„ ๊ฑฐ์˜ ๊นŒ๋จน์€ ์ƒํƒœ๊ฐ€ ๋˜์—ˆ๋‹ค,, ๋ธ”๋กœ๊ทธ์— ๊ฐœ๋…๊ณผ ์ฝ”๋“œ๋ฅผ ์˜ฌ๋ฆฌ๋ฉด์„œ ์‰ฌ์šด ๋ถ€๋ถ„์€ ๋น ๋ฅด๊ฒŒ ๋ณต์Šตํ•˜๊ณ  ์–ด๋ ต๊ณ  ๊ณต๋ถ€ํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๋ถ€๋ถ„

monynony0203.tistory.com

์—ฌ๊ธฐ์— ์ž์„ธํžˆ ์ ์–ด๋‘์—ˆ๋‹ค.

 

3. ํฌ์žฅ ๊ฐ’ ๋น„๊ต

Integer a = 300;
Integer b = 300;

Integer c = 100;
Integer d = 100;

a์™€ b๋Š” ์„œ๋กœ ๊ฐ™์€ ๊ฐ’์„ ๋‹ด๊ณ  ์žˆ์–ด๋„, ํฌ์žฅ ๊ฐ์ฒด๋กœ์„œ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ์ฒด๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— a==b๋Š” false๊ฐ€ ๋œ๋‹ค. ๋งŒ์•ฝ์— a์™€ b๊ฐ€ ๊ฐ™๊ฒŒ ๋‚˜์˜ค๊ฒŒ ํ•˜๋ ค๋ฉด ๋‚ด๋ถ€ ๊ฐ’์„ ์–ธ๋ฐ•์‹ฑํ•˜๊ฑฐ๋‚˜ equals() ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด์„œ ๋‚ด๋ถ€ ๊ฐ’์„ ๋น„๊ตํ•ด์•ผํ•œ๋‹ค.

 

โ‘  ๋‚ด๋ถ€ ๊ฐ’ ์–ธ๋ฐ•์‹ฑ

โ‘ก equals() ํ•จ์ˆ˜

 

ํ•˜์ง€๋งŒ c์™€ d๋Š” ==์„ ํ†ตํ•ด์„œ๋„ ๋‚ด๋ถ€ ๊ฐ’์„ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋‹ค.

ํƒ€์ž… ๊ฐ’์˜ ๋ฒ”์œ„
boolean true
char \u0000 ~ \u0071
byte, short, int -128 ~ 127

 

๋‹ค์Œ ํ‘œ์ฒ˜๋Ÿผ ๊ฐ’์˜ ๋ฒ”์œ„ ๋‚ด๋ถ€์— ์žˆ๋Š” ๊ฐ’๋“ค์€ equals()์™€ ๋น„๊ต์—ฐ์‚ฐ์ž๋กœ ๋ชจ๋‘ ๋น„๊ต ๊ฐ€๋Šฅํ•˜๋‹ค.


- Math Class

: ์ •์  ๋ฉ”์†Œ๋“œ

๋ฉ”์†Œ๋“œ ์„ค๋ช…  ์˜ˆ์ œ ์ฝ”๋“œ ๋ฆฌํ„ด ๊ฐ’
 int abs(int a)
double abs(double a)
์ ˆ๋Œ€๊ฐ’ int  a = Math.abs(-5);
double b = Math.abs(-3.14);
a = 5
b = 3.14
double ceil(double a) ์˜ฌ๋ฆผ๊ฐ’ double a = Math.ceil(5.3);
double b = Math.ceil(-5.3);
a = 6.0
b = -5.0
double floor(double a) ๋ฒ„๋ฆผ๊ฐ’ double a = Math.floor(5.3);
double b = Math.floor(-5.3);
a = 5.0
b = -6.0
int max(int a, int b)
double max(double a, double b)
์ตœ๋Œ€๊ฐ’ int a = Math.max(5, 9);
double b = Math.max(-5.3, 9.2)
a = 9
b = 9.2
int min(int a, int b)
double min(double a, double b)
์ตœ์†Œ๊ฐ’ int a = Math.min(5, 9);
double b = Math.min(-5.3, 9.2)
a = 5
b = -5.3
duoble random() ๋žœ๋ค๊ฐ’ double a = Math.random(); 0.0<=a<1.0
double rint(double a) ๊ฐ€๊นŒ์šด ์ •์ˆ˜์˜ ์‹ค์ˆ˜ ๊ฐ’ double a = Math.rint(5.3);
double b= Math.rint(5.7);
a = 5.0
b = 6.0
long round(double a) ๋ฐ˜์˜ฌ๋ฆผ ๊ฐ’ long a = Math.round(5.3);
longb= Math.round(5.7);
a = 5
b = 6

 

 

 

Java 3์ผ์ฐจ ๊ณต๋ถ€(์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ)

1. Math.random() * n Math.random() * n ์—์„œ, (int) Math.random() * 10์€ 1์—์„œ 10๊นŒ์ง€์˜ ์ •์ˆ˜ ์ค‘์—์„œ ๋žœ๋คํ•œ ์ˆซ์ž๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. public static void main(String args[]) { System.out.println("๋กœ..

monynony0203.tistory.com

 

์ด ๊ธ€ 1๋ฒˆ์—์„œ๋„ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด,Math class์˜ random ํ•จ์ˆ˜๋Š” ์›ํ•˜๋Š” ๋ฒ”์œ„๋ฅผ ์ •ํ•ด์„œ ๋žœ๋คํ•œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

 

// 1 ~ 10 ๊นŒ์ง€
int a = ((int) Math.randon() * 10) + 1;

 

[์ถœ์ฒ˜] ํ˜ผ๊ณต์ž๋ฐ” p 498 ~ p 507

728x90