I assume the questions are the same, but to clarify, I am using the beta of the second version. The question asks: 45) Integer literals are always what size? The answer given is: Integer literals are always treated as 32-bit ints. However, this is disproven by the following code: attempting to assign an integer literal to a byte works just fine, while attempting to assign the same integer causes a problem. I think the correct response is, "Integer literals are always treated as the smallest integer-type that can hold them without an overflow." -------------> byte b = 5; //This works just fine! int xx = 5; b = xx; //This causes an error!
posted 15 years ago
I found this thread after I posted. http://www.coderanch.com/t/190639/java-programmer-SCJP/certification/integer-literals Note that I searched for Integer literal before posting, but I restricted my search to the mock exam, and missed the discussion elsewhere. This proves that my surmise about byte is wrong, but int is a little misleading. Actually, it treats Integer literals as final ints rather than unadorned ints. (Ok, I'm splitting hairs so at least I'm not completely wrong... ) Anyway, I thought I'd share the results.