Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
danek130995
24 / 24 / 1
Регистрация: 25.05.2014
Сообщений: 873
#1

Коды цвета - Программирование Android

30.11.2015, 12:28. Просмотров 657. Ответов 10
Метки нет (Все метки)

красный цвет в формате rgb можно записать в шестнадцатеричной системе как 0xFF0000
Java
1
2
3
        int b = 0b11111111111111110000000000000000;
        int d = -65536;
        int h = 0xFFFF0000;
Скажите пожалуйста, d это decimal(десятичная)?
Почему AndroidStudio отображает число 0xFFFF0000 как -65536? Я перевел FFFF0000 в десятичную, но получил 4294901760.

А когда мы добавляем 0x, java сама преобразовывает число в десятичную, чтобы его можно было представить в int, без букв F, например?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2015, 12:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Коды цвета (Программирование Android):

смена цвета - Программирование Android
Здравствуйте. В общем вопрос такое есть два layout (1 - игровое поле, 2-настройка игры) во 2-ом layout можно выбрать цвет игрового поля...

Изменение цвета - Программирование Android
Здравствуйте! Есть такой код: <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item > <shape...

Изменение цвета текста - Программирование Android
Здравствуйте. Глупая задача, но только начинаю разбираться с java И прохожу простые задачи, очень простые. Необходимо поменять цвет...

Изменение цвета заголовка - Программирование Android
Ребят срочно надо изменить цвет надписи в actiobar Только по пунктам. Вознаграждение 200 р. на телефон.

Изменение цвета ActionBar - Программирование Android
Всем привет, столкнулся с такой проблемой при попытке изменить цвет ActionBar-а, использовал данный...

Изменения цвета ссылки - Программирование Android
Объявление ссылки: Linkify.addLinks(holder.info, Linkify.ALL); как мне сделать что бы при клике на неё у нее менялся цвет на заданный...

10
Valakin
431 / 97 / 15
Регистрация: 21.02.2015
Сообщений: 731
30.11.2015, 13:24 #2
Цитата Сообщение от danek130995 Посмотреть сообщение
java сама преобразовывает число в десятичную
вряд ли, зачем?, железо только биты любит
не верно утверждение что тип int как то связан с десятеричной системой,
число не поменяет свое значение если будет в двоичной или троичной системе представления

Добавлено через 1 минуту
Цитата Сообщение от danek130995 Посмотреть сообщение
d это decimal(десятичная)
d это название, называйте как угодно
1
danek130995
24 / 24 / 1
Регистрация: 25.05.2014
Сообщений: 873
30.11.2015, 13:31  [ТС] #3
Valakin, почему же тогда AndroidStudio отображает число 0xFFFF0000 как -65536?
0
Mikalai
259 / 235 / 95
Регистрация: 11.01.2015
Сообщений: 662
30.11.2015, 13:43 #4
Цитата Сообщение от danek130995 Посмотреть сообщение
Я перевел FFFF0000 в десятичную, но получил 4294901760
Цитата Сообщение от danek130995 Посмотреть сообщение
почему же тогда AndroidStudio отображает число 0xFFFF0000 как -65536?
4294901760 - 2^32 = -65536
1
danek130995
24 / 24 / 1
Регистрация: 25.05.2014
Сообщений: 873
30.11.2015, 13:51  [ТС] #5
Mikalai, а почему Вы вычитаете 2^32?
0
Mikalai
259 / 235 / 95
Регистрация: 11.01.2015
Сообщений: 662
30.11.2015, 14:35 #6
danek130995, с учётом нуля такое количество чисел помещается в int
1
bastrakov
91 / 91 / 14
Регистрация: 10.10.2015
Сообщений: 307
Записей в блоге: 1
30.11.2015, 16:46 #7
топикстартеру: не знаю, зачем Вам тайное знание представления цветов в андроиде. мне лично хватает того, что Ваша первая строка сообщения соотноситься с общеизвестной цветовой кодировкой, которая применяется в web.
http://www.w3schools.com/html/html_colors.asp
в работе использую цвета двумя способами: вот этим, и константами Color.
1
danek130995
24 / 24 / 1
Регистрация: 25.05.2014
Сообщений: 873
30.11.2015, 17:28  [ТС] #8
Mikalai, а почему 2^32? Тип int до 2^31. С учетом какого 0? Эта корректировка сделана специально чтобы значения могли уместиться в int?
0
Pablito
2504 / 1988 / 619
Регистрация: 12.05.2014
Сообщений: 6,940
Завершенные тесты: 1
30.11.2015, 17:30 #9
чел, почитай про представление чисел в двоичной системе, там в двух словах не объяснить, лучше статью нагугли
там лево-право, байты как бы переставляются местами знаковые разряды и все такое - интереснейшее чтиво, серьезно

у джавы int это 32 бита, причем числа там в диапазоне от -много до +много...вопрос, как мы можем знать когда число отрицательное а когда положительное?
правильно - самый старший бит - знаковый, то есть
0b00000000000000000000000000000000 // тут 32 нуля - это число 0
0b10000000000000000000000000000000 // тут направа-налево (почитаешь сам об этом) 31 ноль и последняя 1 и внезапно !!! это не 2^32 а -2147483648 (МИНУС два миллиарда бла бла)

и еще поправочка, реально 0xFFFF0000 это не просто красный, а красный с явно указанным альфа-каналом = 255 (первые слева FF)
1
Mikalai
259 / 235 / 95
Регистрация: 11.01.2015
Сообщений: 662
30.11.2015, 17:59 #10
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
danek130995, Вот

Добавлено через 21 минуту
Смысл в том, что при переполнении считать начинает с обратной стороны диапазона

Java
1
2
3
4
5
    public static void main(String[] args) {
        int x = Integer.MAX_VALUE + 1;
        System.out.println("x = " + x);//-2147483648
        System.out.println("Integer.MIN_VALUE = " + Integer.MIN_VALUE);//-2147483648
    }
1
danek130995
24 / 24 / 1
Регистрация: 25.05.2014
Сообщений: 873
30.11.2015, 20:49  [ТС] #11
Mikalai, спасибо огромное, стало все понятно!
0
30.11.2015, 20:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2015, 20:49
Привет! Вот еще темы с ответами:

Передача цвета в GREED - Программирование Android
Привет всем! начинаю только изучать андройд и приложения! есть рабочая программа изменения цвета фона из полученных данных со слайдера,...

Как подобрать цвета - Программирование Android
Как сделать такую гамму цветов?

GridView смена цвета текста - Программирование Android
Добрый день, подскажите как сменить цвет текста в GridView?

Отображение цвета на разных устройствах - Программирование Android
Есть <color name="colorPrimary">#e45b2f</color> но на разных устройствах отображается по разному. Можно ли как то программно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru