title: byte to char conversion in java give unpredictable result
body: <p>Hi I just encountered with one question of conversion from byte to int.
  code was like this </p>
  
  <pre><code>byte b=(byte)-1;
  System.out.println(b);
  char c=(char) b;
  
  System.out.println(c);
  int i=c;
  System.out.println(i);
  </code></pre>
  
  <p>what I understood is when we convert int -1 to byte it will make 8 bit 2's compliment of +1 so value will be like 1111 1111. when we convert that into char based on MSB it will append 1 or 0. and from char to int just widening conversion is there. but I got output like this.</p>
  
  <pre><code>-1
  ?
  65535
  </code></pre>
  
  <p>I didn't get why it is printing "?" in 2nd place. please help me out on this</p>