这更像是一个 Java 问题,因为它与 Android 相关。
我的代码包含一个包含 30 个案例的 switch 语句。每个案例的正文具有相同的格式来启动与该案例相关的意图。我试图将主体编码为以类名作为参数的方法,但该代码无法编译,因为类名必须在意图中进行硬编码。
下面是开关的一部分(很长的路)
switch(mState) {
case 0:
Intent myIntent = new Intent();
myIntent.setClass(Home_ASM.this, Home_AS0.class);
startActivityForResult(myIntent, 0);
break;
case 1:
Intent myIntent1 = new Intent();
myIntent1.setClass(Home_ASM.this, Home_AS1.class);
startActivityForResult(myIntent1, 2);
break;
我想编写这样的代码:
switch(mState) {
case 0:
myStart(Home_AS0.class,1);
break;
case 1:
myStart(Home_AS1.class,2);
break;
和方法
private void myStart(String state, int value) {
Intent myIntent = new Intent();
myIntent.setClass(Home_ASM.this, state);
startAcivityForResult(myIntent, value);
}
关于如何完成这项工作的任何想法?