my dog learned polymorphism
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Shift operators Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Shift operators" Watch "Shift operators" New topic

Shift operators

Amit, Jhalani

Joined: Jan 11, 2001
Posts: 21
Can sombody help me out on this.
public class Test {
public static void main(String b[]){
int n = 3;
n <<= -2;
I am able to compile it and able to run it also. I wanna know can i use negetive numbers with the shift operatos.The above program gave me the answer as -1073741824.
Please explane.
Carl Trusiak

Joined: Jun 13, 2000
Posts: 3340
This discussion explains this extremely well
Note the lower 5 bits of -2 result in a value of 30 so, this is the same as writing
n <<= 30;

I Hope This Helps
Carl Trusiak, SCJP2, SCWCD
I agree. Here's the link:
subject: Shift operators
It's not a secret anymore!