Go-内置time包

一.导入包

import "time"

二.转换成Time对象

  • 获取当前时间:time. Now ()
  • 自定义时间:time. Date(year int, month Month, day, hour, min, sec, nsec int, loc *Location)

三.Time对象的方法

年月日周

  • Date() : 返回时间的日期信息 返回值int类型
  • Year() : 返回年 返回值int类型
  • Month () : 返回月 返回值Month类型
  • Day () : 返回日 返回值int类型
  • YearDay() : 一年中对应的天 返回值int类型

年,星期范围编号

  • ISOWeek () : 返回年,星期范围编号int类型

时分秒

  • Clock () : 返回 时分秒 返回值int类型

  • Hour () : 返回时返回值int类型

  • Minute () : 返回分 返回值int类型

  • Second () : 返回秒 返回值int类型

  • Nanosecond () : 返回纳秒 返回值int类型

时间戳

  • Unix() :时间戳 返回值 int64
  • UnixNano() :时间戳(纳秒) 返回值 int64

时区

  • Location ():时区返回值 *Location
  • Zone() :时区偏差 返回值string+int

四.时间序列化和返序列化以及比较与计算

参考https://www.jianshu.com/p/9d5636d34f17

列化和返序列化

func (t Time) MarshalBinary() ([]byte, error) {} // 时间序列化

func (t Time) UnmarshalBinary(data []byte) error {} // 反序列化

func (t Time) MarshalJSON() ([]byte, error) {} // 时间序列化

func (t Time) MarshalText() ([]byte, error) {} // 时间序列化

func (t Time) GobEncode() ([]byte, error) {} // 时间序列化

func (t Time) GobDecode() ([]byte, error) {} // 时间序列化

比较与计算

func (t Time) IsZero() bool {} // 是否是零时时间

func (t Time) After(u Time) bool {} // 时间在u 之前

func (t Time) Before(u Time) bool {} // 时间在u 之后

func (t Time) Equal(u Time) bool {} // 时间与u 相同

func (t Time) Add(d Duration) Time {} // 返回t +d 的时间点

func (t Time) Sub(u Time) Duration {} // 返回 t-u

func (t Time) AddDate(years int, months int, days int) Time {} 返回增加了给出的年份、月份和天

posted @   小小咸鱼YwY  阅读(521)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理

目录导航

点击右上角即可分享
微信分享提示