Wednesday, 18 September 2013

Java - explicit conversion to char/short

Java - explicit conversion to char/short

can anyone tell me why this explicit conversion gives different results,
even if size of short/char is both 16bits?
package jh;
public class Main {
public static void main(String[] args) {
byte b = (byte)255;
System.out.println("Size of short: " + Short.SIZE);
System.out.println("Size of char: " + Character.SIZE);
System.out.println((int)((short)b));
System.out.println((int)((char)b));
}
}
Output:
Size of short: 16
Size of char: 16
-1
65535

No comments:

Post a Comment