Java double Keyword
Usage and Examples

double Keyword in Java

The double keyword in Java is used to declare a variable that can hold a double-precision 64-bit floating-point number. It is a primitive data type and part of the foundational set of types in the Java language.

Think of double as the go-to data type when you need more accuracy and range for decimal numbers than what float provides. It's often used for scientific calculations, measurements, and values that require a higher level of precision.

Syntax of the double Keyword

double variableName = value;

You can assign a literal value directly, or store the result of an expression.

Examples of Using double in Java

1. Declaring and Printing a Double Value

public class Main {
  public static void main(String[] args) {
    double pi = 3.14159;
    System.out.println("Value of pi: " + pi);
  }
}
Value of pi: 3.14159

Here, the variable pi is declared using the double keyword. It can precisely represent decimal values like 3.14159.

2. Performing Arithmetic with Doubles

public class Main {
  public static void main(String[] args) {
    double price = 99.99;
    double taxRate = 0.08;
    double totalPrice = price + (price * taxRate);
    System.out.println("Total Price: " + totalPrice);
  }
}
Total Price: 107.9892

The double type handles calculations involving decimals and gives results with more precision than float.

3. Implicit Type Promotion in Expressions

public class Main {
  public static void main(String[] args) {
    int items = 4;
    double pricePerItem = 12.75;
    double total = items * pricePerItem;
    System.out.println("Total cost: " + total);
  }
}
Total cost: 51.0

Even though items is an integer, Java automatically promotes it to double for the multiplication, maintaining floating-point precision.

Why Use double Instead of float?

  • Precision: double is more precise (15–16 digits vs. 6–7 for float).
  • Default choice: In Java, floating-point literals are treated as double by default.
  • Scientific needs: When working with real-world measurements or scientific calculations, double is the preferred choice.

Memory Consumption of double

A double occupies 8 bytes (64 bits) of memory. This is double the size of a float which uses 4 bytes. The extra space is worth it when accuracy matters.

Limitations of double

  • Not suitable for financial calculations where exact precision is needed (use BigDecimal instead).
  • Floating-point arithmetic can introduce small rounding errors.

Default Values of double

When used as an instance or class variable (i.e., not local), the default value of a double is 0.0.

Example:

public class Example {
  static double rate;
  public static void main(String[] args) {
    System.out.println("Default rate: " + rate);
  }
}
Default rate: 0.0