The types of the Java programming language are divided into two categories: primitive types and reference types . The primitive types (§4.2) are the boolean type and the numeric types. The numeric types are the integral types byte , short , int , long , and char , and the floating-point types float and double .