Which of the following type conversions will be performed automatically by the compiler without requiring an explicit cast?

In general, conversion which do not lose information are performed automatically by the compiler; for example, converting from int to long. Conversions which may lose information require an explicit cast; for example, converting from long to int or from double to float.