创建要调用的方法列表
Creating A List of Methods To Be Called
有没有办法列出 "Instructions" 个电话?
List<???> methods = new ArrayList<???>();
for (int i = 0; i < methods.size(); i++) {
((???)methods.get(i)).do();
}
这基本上就是我遇到的问题
我要放
methods.add(graphics.setColor(Color.WHITE));
methods.add(graphics.drawRect(0, 0, 32, 32));
然后在循环中调用那些方法?
尝试:
List<Runnable> methods = new ArrayList<>();
methods.add(new Runnable() {
@Override
public final void run() {
graphics.setColor(Color.WHITE));
}
});
methods.add(new Runnable() {
@Override
public final void run() {
graphics.drawRect(0, 0, 32, 32));
}
});
for(Runnable method : methods)
method.run();
您可以为通用函数创建接口:
interface GenericFunction
{
void do();
}
然后为每个要使用的函数创建一个 class:
class SetColor implements GenericFunction
{
private Color m_Color;
SetColor(Color c) { m_Color = c; }
void do()
{
graphics.setColor(m_Color);
}
}
然后创建这些函数的实例 classes 并将它们放入数组列表中:
List<GenericFunction> methods= new List<GenericFunction>();
methods.add(new SetColor(Color.WHITE));
for (int i = 0; i < methods.size(); i++) {
methods.get(i).do();
}
有没有办法列出 "Instructions" 个电话?
List<???> methods = new ArrayList<???>();
for (int i = 0; i < methods.size(); i++) {
((???)methods.get(i)).do();
}
这基本上就是我遇到的问题 我要放
methods.add(graphics.setColor(Color.WHITE));
methods.add(graphics.drawRect(0, 0, 32, 32));
然后在循环中调用那些方法?
尝试:
List<Runnable> methods = new ArrayList<>();
methods.add(new Runnable() {
@Override
public final void run() {
graphics.setColor(Color.WHITE));
}
});
methods.add(new Runnable() {
@Override
public final void run() {
graphics.drawRect(0, 0, 32, 32));
}
});
for(Runnable method : methods)
method.run();
您可以为通用函数创建接口:
interface GenericFunction
{
void do();
}
然后为每个要使用的函数创建一个 class:
class SetColor implements GenericFunction
{
private Color m_Color;
SetColor(Color c) { m_Color = c; }
void do()
{
graphics.setColor(m_Color);
}
}
然后创建这些函数的实例 classes 并将它们放入数组列表中:
List<GenericFunction> methods= new List<GenericFunction>();
methods.add(new SetColor(Color.WHITE));
for (int i = 0; i < methods.size(); i++) {
methods.get(i).do();
}