Alright, here's a quick example.
public class test {
public static void main(String args[]) {
int i = 5 << 4;
System.out.println(i);
}
}
The << operator in this case is used to multiply 5 by 2^4, which is 16. Thus the output is 80.
5 * [2^4]
Likewise, the >> operator would be used to multiply the left value by 2^rvalue.
You very rarely use either of these. They're useful if you need to multiply or divide by a power of 2. Otherwise, you don't use them.
To be honest, I've never used the >>> operator, and don't know what it does off the top of my head.
Using bitshift operators on data streams is pointless, as well as bad practice. You should use the methods provided by the stream classes to access data.
In five years of doing Java coding, I don't believe I've ever used any of these operators. So I really don't know too much about them, except that basic example I gave above. Just goes to show how useful they really are *wink* since for some reason I can't use a parentheses