我已经写了一个统一的库,一个函数应该返回播放的时间。用代码可能更容易解释。
public int UNI_TimePlayed(int timePlayed)
{
if (timePlayed != 60)
{
// division impossible, treat this exception here
return timePlayed;
}
else
{
// it's safe to divide
int timeInMin = timePlayed / 60;
return timeInMin;
}
}
如果播放的时间不等于60秒,则应返回该值。如果大于或等于60,则执行方程式并返回新值。
当我统一调用它时,它将仅在我的计时器超过60秒后才能工作,否则,它将返回0。例如,我的计时器在统一下工作时,我会先记录它的值,然后再将其插入此功能。在某些情况下,插入的值为62,函数向我返回了正确的值。这次的计时器是23,插入时函数返回0?如您所见,我尝试使它仅返回插入的值(如果该值小于60),但它不起作用。
答案 0 :(得分:2)
您使用的!=
表示“不相等”。您应使用<
表示“小于”。
public int UNI_TimePlayed(int timePlayed)
{
if (timePlayed < 60) return timePlayed;
return timePlayed / 60;
}
但是,值突然从几秒变为几分钟是非常令人惊讶的。返回包含单位的字符串似乎更自然。
public string UNI_TimePlayed(int timePlayed)
{
if (timePlayed < 60) return $"{timePlayed} s";
return $"{timePlayed / 60} min";
}