【发布时间】:2016-05-18 20:37:54
【问题描述】:
我在一个 android 应用程序中有一个类(活动),上面有一堆示例数学问题。您可以通过按下更改问题计数器并显示新问题的按钮来移动到不同的问题。您可以通过单击“显示工作”按钮来查看如何解决问题,该按钮会在屏幕上显示大量信息。我的问题是我有一堆看起来像这样的方法:
public void showWorkButtonClicked()
{
if (questionCounter == 1)
showWork1();
else if (questionCounter == 2)
showWork2();
else if (questionCounter == 3)
showWork3();
//for how ever many questions are available
}
显然,这些 if 语句是糟糕的设计。我可以将每个函数所需的数据存储在一个类中,这在这种情况下可能会起作用(但可能只会让事情变得混乱),但是如果每个 showWork 方法都足够独特以至于不切实际怎么办。我知道如果我是在 C# 中制作应用程序,我可以简单地将代表放入一个列表中,并且会有一个优雅的解决方案。如果有人有更好的解决方案(理想情况下使用更少的代码),我很想听听。
【问题讨论】:
标签: java functional-programming