Java의 Float 및 Double 데이터 유형

Rupam Yadav 2023년10월12일
Java의 Float 및 Double 데이터 유형

Float 및 Double 데이터 유형은 Java에서 실수 또는 부동 소수점 숫자를 저장하는 데 사용되지만 double 데이터 유형은 float보다 정확합니다. double은 부동 소수점 숫자의 기본 데이터 유형입니다.

부동 소수점 숫자를 정밀하게 저장하려면

float는 32비트 IEEE 754 부동 소수점이고 double은 64비트 IEEE 754 부동 소수점입니다. Float는 double에 비해 범위가 더 낮습니다.

아래 주어진 예에서 double 데이터 유형의 d는 두 개의 double 변수 d1d2를 나누어 얻습니다. 유사하게, 두 개의 float 변수 f1f2를 나눌 때 f1이 나타납니다. double의 경우 접미사 d 또는 D를 사용할 필요가 없는 반면 float 유형 데이터의 경우 기본적으로 모든 실수 접미사 f 또는 F를 사용해야 합니다. 숫자는 Java에서 double으로 간주됩니다.

출력에서 double 변수 d의 정밀도와 정확도가 float 변수 f보다 더 큰 것을 볼 수 있습니다. 우리는 doublefloat보다 더 큰 데이터 유형이라는 것을 알고 있으므로 이를 다운캐스팅해야 합니다. doublefloat로 유형 변환하려면 십진수 값 앞의 대괄호 안에 float 키워드를 언급해야 합니다.

출력에서 double 변수를 float로 변환하면 더 큰 데이터 유형을 더 작은 데이터 유형으로 저장함에 따라 데이터와 정밀도가 손실된다는 것을 알 수 있습니다. 따라서 double은 배정도 부동 숫자를 저장하는 데 더 많은 메모리를 사용하고 정확한 결과를 제공합니다.

public class Test {
  public static void main(String args[]) {
    double d1 = 10.0;
    double d2 = 3.0;
    double d = d1 / d2;
    System.out.println("double d : " + d);

    float f1 = 10.0f;
    float f2 = 3.0f;
    float f = f1 / f2;
    System.out.println("float f : " + f);

    float f3 = (float) d;
    System.out.println("float f3 : " + f3);

    double d3 = f;
    System.out.println("double d3 : " + d3);
  }
}

출력:

double d : 3.3333333333333335
float f : 3.3333333
float f3 : 3.3333333
double d3 : 3.3333332538604736

두 데이터 유형의 차이점은 주어진 표 데이터로 설명할 수 있습니다.

데이터 형식 정도 크기 Default 데이터 형식 기본값 접미사 래퍼 클래스 데이터 손실 예어
뜨다 단정밀도(6-7 소수점 이하 자릿수) 32비트 아니요 0.0f f 또는 F를 사용합니다. 기본적으로 float 숫자는 명시적으로 이중으로 처리되므로 이 접미사를 추가해야 합니다. java.lang.Float float를 double로 변환할 때 데이터 손실 없음 키워드 float는 float 유형에 사용됩니다.
더블 배정밀도(십진수 15-16자리) 64비트 0.0d d 또는 D를 사용합니다. 접미사를 사용하려면 선택 사항입니다. java.lang.Double double을 float로 변환할 때 데이터 손실 키워드 double은 배정밀도 숫자를 정의하는 데 사용됩니다.

Float 및 Double은 실수를 나타내는 데 사용됩니다. 두 데이터 유형 모두 정확하지 않습니다. 그들은 대략적인 유형입니다. 정확하고 정확한 결과가 필요할 때 이중으로 가야 합니다. 메모리 및 공간 제약이 있는 경우 float를 고려해야 합니다.

작가: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

관련 문장 - Java Double

관련 문장 - Java Float