Advertisement
Guest User

shift casted to long

a guest
Apr 27th, 2015
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.73 KB | None | 0 0
  1. public class Shift {                                                            
  2.     public static void main(String[] argv) {                                    
  3.         long seed = -9223372036854775808L; // -2^63 coded as 10..0 00..0        
  4.         int shifted_as_int = (int)(seed >>> 32); // coded as       10..0        
  5.         System.out.println(shifted_as_int); // -2^31 since interpreted as signed
  6.         System.out.println(shifted_as_int % 100); // -48 -> bad                
  7.         long shifted_as_long = (long)(seed >>> 32);  // coded as 0..0 10..0    
  8.         System.out.println(shifted_as_long % 100); // 48 -> good                
  9.     }                                                                          
  10. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement