Вниз  Микростатьи и хитрости Java
- 5.06.2010 / 09:57copy  #12053
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Выражение
  1. int p = 56;
  2. boolean a = p < 50 ? true : false;
можно заменить более простым способом
  1. boolean a = p < 50;


Изменено iFone (26.08 / 07:43) (всего 1 раз)
- 5.06.2010 / 18:08copy  #12063
AlexeyW
  Пользователь

AlexeyW 
Сейчас: Offline
Перевод числа из десятичного в шестнадцатеричное:
  1. String hex = new String(Integer.toHexString(int dec));


Изменено iFone (26.08 / 07:42) (всего 1 раз)
- 5.06.2010 / 18:41copy  #12070
LPzhelud
  Пользователь

LPzhelud 
Сейчас: Offline
Если у вас есть тред, выполняющийся непрерывно, не забудьте в конце его цикла добавить задержку хотя бы на 1 милисекунду, в противном случае на некоторых телефонах(в т.ч. и на СЕ) основной поток будет ограничиваться процессорным временем, что чревато торможением вашей программы
__________________
 Эль Презеденте
- 20.06.2010 / 13:04copy  #12833
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Выражения
a = 5
b = 5
c = 5
можно заменить одним более простым
a = b = c = 5

Изменено iFone (26.08 / 14:34) (всего 3 раза)
- 20.06.2010 / 13:15copy  #12834
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции & (Логическое И - Конъюнкция)

Возьмём числа 34 и 27.
34 в двоичной - 100010
27 в двоичной - 011011

34 & 27:
по табл.
0 1 1 0
1 0 1 0
0 0 1 0

Правило: Если в обоих соответствующих битах есть хотя бы один ноль, то и результат будет нулем.

100010
011011
000010

000010 в десятичной 2.

34 & 27 = 2

Изменено aNNiMON (20.06 / 14:01) (всего 4 раза)
- 20.06.2010 / 13:28copy  #12835
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции | (Логическое ИЛИ - Дизъюнкция)

Возьмём числа 34 и 27.
34 в двоичной - 100010
27 в двоичной - 011011

34 | 27:
по табл.
0 1 1 0
1 0 1 0
1 1 1 0

Правило: Если в обоих соответствующих битах есть хотя бы одна единица, то и результат будет единицей.

100010
011011
111011

111011 в десятичной 59.

34 | 27 = 59

Изменено aNNiMON (20.06 / 13:59) (всего 1 раз)
- 20.06.2010 / 13:34copy  #12836
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции ^ (Логическое исключающее ИЛИ - XOR)

Возьмём числа 34 и 27.
34 в двоичной - 100010
27 в двоичной - 011011

34 ^ 27:
по табл.
0 1 1 0
1 0 1 0
1 1 0 0

Правило: Если в обоих соответствующих битах есть различия, то результат - единица, если же совпадают - ноль.

100010
011011
111001

111001 в десятичной 57.

34 ^ 27 = 57

Изменено aNNiMON (20.06 / 14:04) (всего 1 раз)
- 20.06.2010 / 13:37copy  #12837
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции ~

Возьмём число 34.
34 в двоичной - 100010

~34:
по табл.
0 1 1 0
1 0 0 1

100010
011101

011101 в десятичной 29.

~34 = 29
- 20.06.2010 / 13:41copy  #12838
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции >>

Возьмём число 34.
34 в двоичной - 100010

34 >> 3:
Убираем последние 3 бита, добавляем 3 спереди со значениями 1

100010
111100

111100 в десятичной 60.

34 >> 3 = 60


34 >> 3:
Убираем последние 3 бита, и добавляем 3 спереди со значениями 0

100010
000100

000100 в десятичной 4.

34 >> 3 = 4

Изменено aNNiMON (10.11 / 10:56) (всего 2 раза)
- 20.06.2010 / 13:44copy  #12839
Zvers
  Пользователь

Zvers 
Сейчас: Offline
Операции <<

Возьмём число 34.
34 в двоичной - 100010

34 << 3:
Убираем передние 3 бита, добавляем 3 сзади со значениями 1

100010
010111

010111 в десятичной 24.

34 << 3 = 24


34 << 3:
Добавляем в конце (справа) 3 бита со значением 0

100010
100010000

100010000 в десятичной 272.

34 << 3 = 24

Изменено aNNiMON (10.11 / 10:55) (всего 1 раз)
Наверх  Всего сообщений: 83
Фильтровать сообщения
Поиск по теме
Файлы топика (6)
Поиск по форуму