CodeGym /Java Blog /๋ฌด์ž‘์œ„์˜ /์ž๋ฐ” ์ด์ค‘ ํ‚ค์›Œ๋“œ
John Squirrels
๋ ˆ๋ฒจ 41
San Francisco

์ž๋ฐ” ์ด์ค‘ ํ‚ค์›Œ๋“œ

๋ฌด์ž‘์œ„์˜ ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
Java double ํ‚ค์›Œ๋“œ๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฉ”๋ชจ๋ฆฌ์—์„œ 64๋น„ํŠธ ๋˜๋Š” 8๋ฐ”์ดํŠธ๋ฅผ ์ฐจ์ง€ํ•˜๋Š” ๋ถ€๋™ ์†Œ์ˆ˜์  ์ˆซ์ž๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ปดํ“จํ„ฐ ํ˜•์‹์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” double์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ๋ช‡ ๊ฐ€์ง€ ์˜ˆ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ถ€๋™ ์†Œ์ˆ˜์  ๋ฐ ์ปดํ“จํŒ…: ๊ฐ„๋‹จํ•œ ์ˆ˜ํ•™์  ์„ค๋ช…

๋ถ„์ˆ˜๋Š” ๊ณ ์ • ์†Œ์ˆ˜์  ๋˜๋Š” ๋ถ€๋™ ์†Œ์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์˜ต์…˜์€ ๋ถ„์ž(์ˆซ์ž ์ž์ฒด)์™€ ๋ถ„๋ชจ(๋ฐฐ์œจ ์ธ์ˆ˜)๊ฐ€ ์ •์ˆ˜์ธ ์ •๊ทœ ๋ถ„์ˆ˜๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ˆซ์ž 2.7์€ ๋ฐฐ์œจ ์ธ์ˆ˜๊ฐ€ 10์ธ 27์ด๊ณ , ๋ฐฐ์œจ์ด 100์ธ 3.14 - 314์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ๊ณ„์‚ฐ ๊ด€์ ์—์„œ ๊ทธ๋‹ค์ง€ ์ •ํ™•ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ข…์ข… ๋ถ€๋™ ์†Œ์ˆ˜์  ํ‘œํ˜„์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ปดํ“จํŒ…์—์„œ ๋ถ€๋™ ์†Œ์ˆ˜์  ์‚ฐ์ˆ ์€ ๋ฒ”์œ„์™€ ์ •๋ฐ€๋„ ๊ฐ„์˜ ์ ˆ์ถฉ์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•œ ๊ทผ์‚ฌ์น˜๋กœ ์‹ค์ˆ˜๋ฅผ ํŠน์ˆ˜ ์‚ฐ์ˆ ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Java์—์„œ ๋ถ€๋™ ์†Œ์ˆ˜์  ์ˆซ์ž๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ธฐ๋ณธ ํ˜•์‹์€ float์ž…๋‹ˆ๋‹ค. ๊ทธ ์ด๋ฆ„์€ ๋ถ€๋™ ์†Œ์ˆ˜์ ์—์„œ ๋‚˜์˜ต๋‹ˆ๋‹ค. Float๋Š” 32๋น„ํŠธ์ด๋ฉฐ ๊ทธ ์ค‘ 1๋น„ํŠธ๋Š” ๋ถ€ํ˜ธ ์žˆ๋Š” ๋น„ํŠธ, 8๋น„ํŠธ๋Š” ์ง€์ˆ˜, 23๋น„ํŠธ๋Š” ์œ ํšจ ์ˆซ์ž์ž…๋‹ˆ๋‹ค. ๋ฒ”์œ„๋Š” ยฑ3์ž…๋‹ˆ๋‹ค. 40282347E + 38F ์ฆ‰ 6-7๊ฐœ์˜ ์œ ํšจ ์ˆซ์ž. double์ด๋ผ๋Š” ์ด๋ฆ„์€ double float์—์„œ ์œ ๋ž˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋งŒํผdouble ์œ ํ˜•์€ float ๋ณด๋‹ค 2๋ฐฐ ๋” ํฝ๋‹ˆ๋‹ค : 8๋ฐ”์ดํŠธ ๋Œ€ 4. ๋ฐฐ์ •๋„ ์‹ค์ˆ˜๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค. ์ด์ค‘ ์ˆซ์ž๋ฅผ ์œ„ํ•ด ์˜ˆ์•ฝ๋œ 64๋น„ํŠธ ์ค‘ 1์€ ๋ถ€ํ˜ธ ์žˆ๋Š” ๋น„ํŠธ, 11๋น„ํŠธ๋Š” ์ง€์ˆ˜์šฉ, 52๋น„ํŠธ๋Š” ์œ ํšจ ์ˆซ์ž์šฉ์ž…๋‹ˆ๋‹ค. Java ์ด์ค‘ ๋ถ„์ˆ˜๋Š” ยฑ1.79769313486231570E + 308, ์ฆ‰ 15-16๊ฐœ์˜ ์œ ํšจ ์ˆซ์ž ๋ฒ”์œ„์— ์ˆซ์ž๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. Double์€ ๋” ์ •ํ™•ํ•œ ํ˜•์‹์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ •๋ง ํฐ ์ˆซ์ž๋ฅผ ์ €์žฅํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ float ๋ณด๋‹ค double์„ ์„ ํ˜ธํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฑด ๊ทธ๋ ‡๊ณ , sqrt, sin ๋˜๋Š” cos์™€ ๊ฐ™์€ ์ˆ˜ํ•™์  ๋ฐฉ๋ฒ•๊ณผ ๋‹ค๋ฅธ ๋งŽ์€ ๋ฐฉ๋ฒ•์€ ์ด์ค‘ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋ฐฐ์ •๋ฐ€๋„ ๋น„์šฉ์„ ์ง€๋ถˆํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด์ค‘ ๋ณ€์ˆ˜ ์ƒ์„ฑ

double ์œ ํ˜• ์€ ์‹ค์ˆ˜๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ์—์„œ ์‹ค์ˆ˜๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค๋ ค๋ฉด ๋‹ค์Œ ๋ช…๋ น์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

double name;
์—ฌ๊ธฐ์„œ name์€ ๋ณ€์ˆ˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

double myPrice;  //here we create a variable called myPrice
double action; //and here -- action. 
์†๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ double ์œ ํ˜•์˜ ์—ฌ๋Ÿฌ ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค .

double name1, name2, name3;

Java ์ด์ค‘ ํ‚ค์›Œ๋“œ ์˜ˆ

Java double ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค .

double myPrice = 5.0;
double height = 180;
double x = 7.1, y = 3.0;
์—ฌ๊ธฐ์„œ myPrice ๋ณ€์ˆ˜์—๋Š” ๊ฐ’ 5.0, ๋ณ€์ˆ˜ height โ€” 180, x ์—๋Š” ๊ฐ’ 7.1, y ์—๋Š” 3.0์ด ์žˆ์Šต๋‹ˆ๋‹ค .

Double์„ ์ •์ˆ˜๋กœ

Java์—์„œ double ๋ณ€์ˆ˜๋Š” ์‹ค์ˆ˜ ๋ฐ ์ •์ˆ˜ ๋ชจ๋‘ ํ• ๋‹น๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •์ˆ˜๋ฅผ ํ• ๋‹นํ•  ๋•Œ ๋‹จ์ˆœํžˆ ์‹ค์ˆ˜๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ๋•Œ๋กœ๋Š” ์ •ํ™•๋„๊ฐ€ ์•ฝ๊ฐ„ ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

double height = 180;
int k = 2; 
int i = 5; 
double myDouble = k*i;
์‹ค์ œ๋กœ height ๋ณ€์ˆ˜๋Š” ์ˆซ์ž 180.0์„ ์ €์žฅํ•˜๊ณ  myDouble ๋ณ€์ˆ˜๋Š” ์ˆซ์ž 10.0์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด์ค‘ ๋ฐ ์ •์ˆ˜ ์ƒํ˜ธ ์ž‘์šฉ

๋˜ํ•œ ์–ด๋–ค ํ‘œํ˜„์— ์ •์ˆ˜์™€ ์‹ค์ˆ˜๊ฐ€ ์—ฐ๋ฃจ๋˜์–ด ์žˆ๋‹ค๋ฉด ๊ทธ ์ •์ˆ˜๋Š” ๋จผ์ € ์‹ค์ˆ˜๋กœ ๋ณ€ํ™˜๋˜๊ณ  ๋‚˜์„œ์•ผ ๋‹ค๋ฅธ ์‹ค์ˆ˜์™€ ์ƒํ˜ธ ์ž‘์šฉํ•œ๋‹ค.

public class DoubleDemo {
   public static void main(String[] args) {
       int k = 2;
       double myDouble1 = 5;
       double myDouble = k*7.0;
       System.out.println(myDouble1);
       System.out.println(k*myDouble1);
       System.out.println(myDouble);
   }
}
์ด ์˜ˆ์—์„œ ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
5.0 10.0 14.0
์ˆซ์ž myDouble1์ด 5.0์ด ์•„๋‹Œ 5๋กœ ํ‘œ์‹œ๋˜๋”๋ผ๋„ Java๋Š” ์ด ์ˆซ์ž๋ฅผ double ๋กœ ์ธ์‹ํ•˜๋ฏ€๋กœ ์‹ค์ œ๋กœ๋Š” 5.0์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. int์™€ double์„ ๊ณฑํ•˜๋ฉด ์‹ค์ œ๋กœ ์ด ์ˆซ์ž๊ฐ€ ์ •์ˆ˜์ธ ๊ฒฝ์šฐ์—๋„ ํ•ญ์ƒ double ์„ ์–ป์Šต๋‹ˆ๋‹ค. double ์œ ํ˜•์˜ ๋ณ€์ˆ˜๋ฅผ int ์œ ํ˜•์˜ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . ์ด๋ ‡๊ฒŒ ํ•˜๋ ค๋ฉด ๋ช…์‹œ์  ์œ ํ˜• ๋ณ€ํ™˜์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์†Œ์ˆ˜ ๋ถ€๋ถ„์€ ๋ฒ„๋ ค์ง€๊ณ  ์ˆซ์ž๋Š” ๋” ์ž‘์€ ์ •์ˆ˜๋กœ ์ž˜๋ฆฝ๋‹ˆ๋‹ค.

public class DoubleDemo {
   public static void main(String[] args) {
       double x = 57.789;
       int almostX;
       almostX = (int)x;
       System.out.println(almostX);
   }
}
์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
57
๋งˆ์ง€๋ง‰์œผ๋กœ ๋‚˜๋ˆ—์…ˆ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๊ฐ€์žฅ ํฅ๋ฏธ๋กœ์šด ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‘ ์ •์ˆ˜๋ฅผ ๋‚˜๋ˆ„๋ฉด ์„œ๋กœ ๊ท ๋“ฑํ•˜๊ฒŒ ๋‚˜๋ˆŒ ์ˆ˜ ์—†๋”๋ผ๋„ ๋‚˜๋ˆ„๊ธฐ ๊ฒฐ๊ณผ ์ •์ˆ˜๋ฅผ ์–ป๋Š”๋‹ค๋Š” ์‚ฌ์‹ค์„ ์ด๋ฏธ ์•Œ๊ณ  ๊ณ„์‹ค ๊ฒƒ์ž…๋‹ˆ๋‹ค.

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7/2;
       System.out.println(myDouble);
   }
}
๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
3.0
์ด๋Š” Java ๋จธ์‹ ์ด ๋จผ์ € ๋‘ ๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ๋‚˜๋ˆˆ ๋‹ค์Œ(3์„ ์–ป์Œ) ์ด ๊ฐ’์„ double ์œ ํ˜•์˜ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ณ  ๊ฒฐ๊ณผ๋กœ 3.0์„ ์–ป๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ •์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ ์ผ๋ฐ˜ ๋‚˜๋ˆ—์…ˆ์„ ํ•˜๋ ค๋ฉด ์†์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ˆซ์ž ์ค‘ ํ•˜๋‚˜๋ฅผ ์‹ค์ˆ˜๋กœ ์“ฐ๋ฉด ์ „์ฒด ํ‘œํ˜„์‹์ด ์ž๋™์œผ๋กœ ์‹ค์ˆ˜๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜ ์œ ํ˜•์˜ ๋ณ€์ˆ˜๋กœ ์ž‘์—…ํ•˜๋ฉด 1.0์„ ๊ณฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์ง€๋งŒ ๋ณ€์ˆ˜ ์œ ํ˜•์„ int ์—์„œ double ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค .

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7.0/2;
       int x = 5;
       int y = 2;
       System.out.println(myDouble);
       System.out.println(x*1.0/y);
   }
}
์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
3.5 2.5
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION