C# 将60分钟或以上转换为小时

C# 将60分钟或以上转换为小时,c#,time,C#,Time,我有两个变量,分别代表小时和分钟。如果minutes变量为=60分钟,我想对时间进行四舍五入 如果小时=3,分钟=60,我想返回小时=4,分钟=00。有时间函数吗?实现起来非常简单: while (minutes >= 60) { minutes -= 60; hours += 1; } 试试这个(假设hours和minutes都是int): 创建自己的结构/类以使用自定义getter/setter存储时间 比如说 struct myTimeStruct

我有两个变量,分别代表小时和分钟。如果minutes变量为=60分钟,我想对时间进行四舍五入


如果小时=3,分钟=60,我想返回小时=4,分钟=00。有时间函数吗?

实现起来非常简单:

while (minutes >= 60)
{
    minutes -= 60;
    hours += 1;
}
试试这个(假设
hours
minutes
都是
int
):


创建自己的结构/类以使用自定义getter/setter存储时间

比如说

    struct myTimeStruct
    {
        public int minutes
        {
            get { return minutes; }
            set
            {
                minutes = minutes % 60;
                hours += minutes / 60;
            }
        }

        private int hours
        {
            get { return hours; }
            set { hours = value; }
        }
    }
看一看这门课:


感谢您的帮助……有一些类似的内容,但将分钟数>60作为条件,而不是分钟数>=60,并认为我的计算是错误的。@幸运的是,这就是为什么您应该在问题中显示代码的原因,其他人可以很容易地发现错误。:)
    struct myTimeStruct
    {
        public int minutes
        {
            get { return minutes; }
            set
            {
                minutes = minutes % 60;
                hours += minutes / 60;
            }
        }

        private int hours
        {
            get { return hours; }
            set { hours = value; }
        }
    }
var hours = 3;
var minutes = 60;

var timeSpan = TimeSpan.FromHours(hours) + TimeSpan.FromMinutes(minutes);
var totalHours = timeSpan.TotalHours;