2016-09-13 7 views
-1

Я смотрел на класс java java.lang.Integer, и я заметил много методов с операторами «>» и «<», но я не знаю, что это.Синтаксис: «>» и «<» операторы в java

Например, метод Integer.signum(int i):

public static int signum(int i) { 
    // HD, Section 2-7 
    return (i >> 31) | (-i >>> 31); 
} 

Или Integer.rotateLeft(int i, int distance)

public static int rotateLeft(int i, int distance) { 
    return (i << distance) | (i >>> -distance); 
} 
+2

<< (левая смена) и >> (правая смена) –

+1

Хорошо, я нашел, что такое бит-сдвиги. Благодаря! – Frankzt

ответ

0

Эти операторы выполняют Bitshift на номер.

>> bithshift право

<< Bitshift покинул

Дополнительная информация here в Битовые операторы: раздел.

+0

Что такое битвард? – Frankzt

+1

Сдвиг принимает биты переменной и смещает их на одну из сторон столько раз, сколько объявлено после оператора. –

+0

Имея переменную 'int', чтобы сказать 5, которая представлена ​​как' 00000101', сдвигая ее вправо, вы получите '00000010' –

0

Это операторы бит-сдвига.

Дополнительная информация на странице this.

По существу:

  • << -> Подпись сдвиг влево
  • >> -> Подпись сдвиг вправо
  • >>> -> сдвиг вправо без знака

this См SO вопрос для подробные сведения о том, какие операции бит-сдвига и как они изменяют числа.

0

>> - арифметический сдвиг вправо, >>> - это логический сдвиг вправо и << смена влево.
для получения более подробной информации перейти к Bitwise and Bit Shift Operators

Смежные вопросы