Что это за выражение в Java (1 << 2)? - PullRequest
3 голосов
/ 23 марта 2012

Я не знаю, что это значит "1 << 2" в: </p>

public static final int MODIFY_METADATA = 1 << 2; // modify object

Пожалуйста, помогите мне!

Ответы [ 2 ]

4 голосов
/ 23 марта 2012

Операторы Java

Побитовые операции

<< - оператор сдвига влево.

3 голосов
/ 23 марта 2012

Если вы хотите знать, зачем использовать 1 << 2 вместо 4, что является тем же значением, то это потому, что вы явно хотите использовать битовую маску, например

public static final int FLAG0 = 1 << 0;
public static final int FLAG1 = 1 << 1;
public static final int MODIFY_METADATA = 1 << 2;

Показывает, что каждое значение находится внемного маски.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...