Type Conversion and Casting

If the two types are compatible, then Java will perform the conversion automatically.

For example, assign an int value to a long variable.

For incompatible types we must use a cast.

Casting is an explicit conversion between incompatible types.

Java's Automatic Conversions

An automatic type conversion will be used if the following two conditions are met:

  1. The two types are compatible.
  2. The destination type is larger than the source type.

int type is always large enough to hold all valid byte values, so an automatic type conversion takes place.



public class Main {
  public static void main(String[] argv) {
    byte b = 10;
    int i = 0;

    i = b;
    System.out.println("b is " + b);
    System.out.println("i is " + i);
  }
}

The output:


b is 10
i is 10

For widening conversions, integer and floating-point types are compatible with each other.


public class Main {
  public static void main(String[] argv) {
    int i = 1234;
    float f;

    f = i;

    System.out.println("i is " + i);
    System.out.println("f is " + f);
  }
}

The output:


i is 1234
f is 1234.0
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.