我对编程比较陌生,我试图用Java创建一个Puzzle Boardgame,我想制作你必须以不同颜色移动的标记。 令牌的位置和数量保存在此数组中:
{
{2,1,1,3},
{2,1,1,3},
{4,6,6,5},
{4,7,8,5},
{9,0,0,10}
}
所以现在我的问题是,如何将这些数字转换为RGB颜色值,这些值很容易区分?
答案 0 :(得分:0)
您可以对Rgb和int Stuff使用java.awt.Color类。 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)
从int或
获取Colorhttp://docs.oracle.com/javase/7/docs/api/java/awt/Color.html#Color(int,%20int,%20int)
用于创建基于的颜色 rgb值。
您可以使用Random方法生成颜色。
或者选择一些颜色并将它们存储在一个数组中并随机选择任何一个令牌。
编辑(对评论的回应):
您可以为此获取哈希映射。 因此,将令牌编号保存为键,将颜色保存为值:
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