1. 自己造轮子——Time类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace TimeClass
{
class Program
{
static void Main(string[] args)
{
Time t1 = new Time(19,56,22);
Console.WriteLine(t1.ToString12());
Console.WriteLine(t1.ToString24());
}
}
class Time
{
#region 字段
private int hour;
private int minute;
private int second;
#endregion
#region 属性
public int Hour
{
get
{
return hour;
}
set
{
Hour = (value >= 0 && value < 24) ? value : 0;
}
}
public int Minute
{
get
{
return minute;
}
set
{
Minute = (value >= 0 && value < 60) ? value : 0;
}
}
public int Second
{
get
{
return second;
}
set
{
Second = (value >= 0 && value < 60) ? value : 0;
}
}
#endregion
#region 构造函数
public Time()
{
SetTime(0,0,0);
}
public Time(int hourValue)
{
SetTime(hourValue,0,0);
}
public Time(int hourValue,int minuteValue,int secondValue)
{
SetTime(hourValue, minuteValue, secondValue);
}
#endregion
#region 方法
private void SetTime(int h,int m,int s)
{
hour = h;
minute = m;
second = s;
}
public string ToString24()
{
return hour.ToString() + ":" + minute.ToString() + ":" + second.ToString();
}
public string ToString12()
{
if(hour <= 12)
return ToString24() + " AM";
else
return (hour % 12).ToString() + ":" + minute.ToString() + ":" + second.ToString() + " PM";
}
#endregion
}
}
2. 现成的轮子——DateTime类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LearnDateTime
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(DateTime.Today.AddDays(-1).ToShortDateString());
Console.WriteLine(DateTime.Today.ToShortDateString());
Console.WriteLine(DateTime.Today.ToLongDateString());
Console.WriteLine(DateTime.Today.AddDays(1).ToShortDateString());
Console.WriteLine(DateTime.Now.ToShortTimeString());
Console.WriteLine(DateTime.Now.ToLongTimeString());
Console.WriteLine(DateTime.Now.ToLocalTime());
Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
DateTime dt = new DateTime(2021, 6, 3, 22, 00, 12);
Console.WriteLine(dt.ToLongTimeString());
TimeSpan ts = DateTime.Now - dt;
Console.WriteLine("时间间隔:{0}日{1}时{2}分{3}秒{4}毫秒",ts.Days,ts.Hours,ts.Minutes,ts.Seconds,ts.Milliseconds);
Console.WriteLine("时间间隔:{0}秒", ts.TotalSeconds);
}
}
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210604221441877.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODU2NjYzMg==,size_16,color_FFFFFF,t_70)