如何改进下面的代码?我是Java新手,来自iOS背景。我认为意图需要一个单独的变量。
public void activityOpener(int a) {
if (a == 1) {
Intent intent = new Intent (this, proj1new.class);
startActivity(intent);
}else {
Intent intent = new Intent (this, BasicNumbers.class);
startActivity(intent);
}
}
发布于 2018-08-30 04:29:20
我会像这样重构它:
public void activityOpener(int a) {
Class<?> cls = a == 1
? proj1new.class
: BasicNumbers.class;
Intent intent = new Intent(this, cls);
startActivity(intent);
}
变化不大,但它清楚地表明,只有新的activity类依赖于a
。
如果你的风格是追求简洁,整个事情可以简化为一行(如果你想在将来扩展逻辑,代价是灵活性):
public void activityOpener(int a) {
startActivity(new Intent(this, a == 1 ? proj1new.class : BasicNumbers.class));
}
发布于 2018-08-30 04:28:55
public void activityOpener(int a) {
Intent intent;
if (a == 1) {
intent = new Intent (this, proj1new.class);
}else {
intent = new Intent (this, BasicNumbers.class);
}
startActivity(intent);
你是这个意思吗?代码现在更整洁了
https://stackoverflow.com/questions/52085545
复制相似问题