我有一个已加载所有图像的资产类,我也有一个卡类,并且我在卡类中有一个字符串来表示该卡的名称。现在,我想用卡类中的字符串从资产中的值绘制该图像,以便它们匹配。我将如何做到这一点?
这就是我所拥有的
class Assets {
public static Pixmap kick;
}
和我想从中获取的上下文
void drawHand(){
int x = 70;
for(int i=0;i<hand.length;i++){
Graphics g = game.getGraphics();
g.drawPixmap(Assets.(hand[i].returnname()),x,230); // hand[i].returnname() == "kick"
x= x+65 ;
}
}
您可以使用反射来读取类成员名称:
class Assets {
public Integer kick = 5;
}
class HelloWorld
{
public static void main (String[] args)
{
Assets t = new Assets();
Field[] fields = t.getClass().getDeclaredFields();
for (Field f: fields){
System.out.println("f = " + f.getName()); // prints f = kick
}
}
}
就是说,我同意@ajb:您可能想使用哈希图,而且,通常,避免使用反射是个好主意。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句