In Java, automatic conversion of simple data types can only be converted from low-level types to high-level types. Low-level refers to either low precision (such as integer relative to floating-point decimal) or small memory for storing data, that is, small data span (such as integer relative to long integer). If you want to convert from a high-level type to a low-level type, you must use a cast.