2015-01-30 2 views
-2

Я относительно новичок в программировании, и я пытаюсь создать головоломку Board на языке Java, и я хочу сделать маркеры, которые вы должны перемещать в разных цветах. Позиции и количество маркеров сохраняются в этом массиве:Преобразование значения int в цвет RGB

{ {2,1,1,3}, {2,1,1,3}, {4,6,6,5}, {4,7,8,5}, {9,0,0,10} }

Так что теперь мой вопрос, как я могу преобразовать эти цифры в значение цвета RGB, которые легко различимы?

ответ

0

Вы можете использовать класс java.awt.Color для Rgb и int Stuff. http://docs.oracle.com/javase/7/docs/api/java/awt/Color.html

Вы можете использовать:

http://docs.oracle.com/javase/7/docs/api/java/awt/Color.html#Color(int)

для получения цветового из междунаров или

http://docs.oracle.com/javase/7/docs/api/java/awt/Color.html#Color(int,%20int,%20int)

для создания цвета на основе значения RgB.

Вы можете использовать метод Random для генерации цветов.

Или выберите некоторые цвета и сохраните их в массиве и выберите их случайно для любого токена.

Edit (Ответ на комментарий):

Вы можете взять HashMap для этого. Так сохранить номер лексемы, как ключ и цвет в качестве значения:

HashMap<Integer,Color> map = new HashMap<Integer,Color>(); 

и не только простой написать метод, как это, чтобы получить цвет маркера:

private Color getColor(int tokenNumber){ 
    if(!map.containsKey(tokenNumber)){ 
     map.put(tokenNumber, createColorForToken(tokenNumber)); 
    } 
    return map.get(tokenNumber); 

} 

жаль плохо Русский: P

+0

И как мне получить код для окраски каждого токена с номером 2 в том же цвете? – Christemp

+0

Посмотрите ответ. Я добавил для вас пример кода. – Marcel

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