【发布时间】:2015-10-06 16:13:25
【问题描述】:
基本上,我有一个变量'prime'。它只能取 0 到 6 之间的值。根据它的值,如果素数为 0,我希望字符串“结果”为星期日,如果为 1,则为星期一,等等。目前,它的编码方式如下:
String result = new String();
if (prime == 0)
{
result = "Sunday";
}
if (prime == 1)
{
result = "Monday";
}
if (prime == 2)
{
result = "Tuesday";
}
if (prime == 3)
{
result = "Wednesday";
}
if (prime == 4)
{
result = "Thursday";
}
if (prime == 5)
{
result = "Friday";
}
if (prime == 6)
{
result = "Saturday";
}
else
{
result = "Check your code.";
}
我想知道是否有更快的方法来做到这一点?我创建了一个包含星期几的数组:
String[] days = new String[7];
days [0] = "Sunday";
days [1] = "Monday";
days [2] = "Tuesday";
days [3] = "Wednesday";
days [4] = "Thursday";
days [5] = "Friday";
days [6] = "Saturday";
我如何快速优雅地对其进行编码,以便如果 prime 的值为 0,则字符串“result”是数组的第一个元素,依此类推,直到如果 prime 为 6,则字符串“result”是第七元素?
【问题讨论】:
-
if (prime >= 0 && prime < days.length) { result = days[prime]; }...? -
不要使用
if使用if else或switch case -
@MadProgrammer 你真的应该把它作为一个答案,可能会解释你如何使用数组来查找值。毕竟你确实先得到它
-
@TheveshTheva 如果
if块的内容只有一行,则不需要大括号 -
你已经死心塌地在你的数列上好几天了吗? DayOfWeek.values() 已经进行了查找,但分别是从星期一到星期日(0 - 6)。
标签: java arrays if-statement