Java中有三種移位運算符:左移運算符(<<),右移運算符(>>)和無符號右移運算符(>>>)。
例如,對于二進制數(shù)1101,左移2位后結(jié)果為110100。
例如,對于二進制數(shù)1110,右移2位后結(jié)果為1111。
例如,對于二進制數(shù)1011,無符號右移2位后結(jié)果為0010。
移位運算符的原理是通過對二進制數(shù)的位進行移動來實現(xiàn)。左移運算符通過將所有位向左移動指定的位數(shù),并且在低位補0來實現(xiàn)。右移運算符通過將所有位向右移動指定的位數(shù),并且在高位補符號位來實現(xiàn)(正數(shù)補0,負(fù)數(shù)補1)。無符號右移運算符通過將所有位向右移動指定的位數(shù),并且在高位補0來實現(xiàn)。