HI everybody.. I have a silly doubt.. All integral literals(byte, short, int and char) r signed..... Can somebody explain in simple words the difference between signed and unsigned literals. Thanks in advance.. shalini
hi i suppose char is not signed its unsigned.. signed means if the MSB is 1( in bit representation) then the number is negetive.. else positive.. suppose for bytes if this is signed 11111111 -> -1 if unsigned ( but java dosent support unsigned byte) 11111111 -> 255 HTH anil
It's not fair to say that all interger types in java are signed. It is not true. JLS says that 'char' is unsigned and it is part of integral type. All numeric data types are SIGNED. char is the only UNSIGNED integral type. The following example may clear the confusion. int i=-1; //compiles byte i=-1;//compiles. char i=1;//compiles char i=-1;//Explicit cast needed to convert int to char,because char type is UNSIGNED char i=(char)-1;//compiles fine. Correct me if I'm wrong.