File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes casting from int to byte Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "casting from int to byte" Watch "casting from int to byte" New topic

casting from int to byte

Mathew Lee
Ranch Hand

Joined: Jun 08, 2009
Posts: 238
I was reading following lines from link

did not understand it clearly.

>>>if you really want enough rope, Java uses the C/C++ convention of enclosing the data type with parenthesis i.e. (), thus the following code will compile and run

public class Mc{
public static void main(String argv[]){
byte b=0;
int i = 5000;
b = (byte) i;
The output is


I did bnot understand why output is -120 when i has 5000 value.
Any ideas, resources,sample code,links, highly appreciated. thanks in advance.
Campbell Ritchie

Joined: Oct 13, 2005
Posts: 45251
Write down the binary string value of 5000, as in your other thread, strike out all but the rightmost 8 bits, and work out what that means in two's complement, with values of -128 (+)64 32 16 8 4 2 and 1 for the different bits going from left to right.
I agree. Here's the link:
subject: casting from int to byte
It's not a secret anymore!