Java, in a sort of carryover from C/C++, has about a half-dozen primitive types. int, char, double, etc. they are not true 'objects' in that they don't have methods, member variables, or anything one would normally associate with objects.
a String IS an object. in fact, everything in java that is not a primitive is an object.
There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors