美文网首页
18-Go语言时间和日期

18-Go语言时间和日期

作者: 喝酸奶要舔盖__ | 来源:发表于2018-10-01 16:08 被阅读0次

时间和日期函数

当前时间获取
  • 函数:time.Now()
//1.获取当前时间
now := time.Now()
fmt.Println(now) //2018-10-01 11:05:13.437611 +0800 CST m=+0.000000001

日期函数
//2.获取当前时间的年月日时分秒
fmt.Println("年",now.Year())
fmt.Println("月",now.Month())
fmt.Println("日",now.Day())
fmt.Println("时",now.Hour())
fmt.Println("分",now.Minute())
fmt.Println("秒",now.Second())
fmt.Println("周期",now.Weekday())

日期字符串格式化
  • 第一种格式化方法
//3.按照指定的格式生成字符串
    t := time.Now()
    //第一种指定格式
    //fmt.Printf("%d-%d-%d %d:%d:%d\n", t.Year(),t.Month(),t.Day(),t.Hour(),t.Minute(),t.Second())

    //第二种方法
    //func Sprintf(format string, a ...interface{}) string
    str := fmt.Sprintf("%d-%d-%d %d:%d:%d\n", t.Year(),t.Month(),t.Day(),t.Hour(),t.Minute(),t.Second())
    fmt.Println(str)
  • 第二种格式化方式
    • 按照2006/01/02 15:04:05 这个字符串是Go语言规定的, 各个数字都是固定的
//使用format函数格式化时间
    //2006/01/02 15:04:05 这个字符串是Go语言规定的, 各个数字都是固定的
    //字符串中的各个数字可以只有组合, 这样就能按照需求返回格式化好的时间
    t := time.Now()
    str := t.Format("2006-01-02 15:04:05")
    str1 := t.Format("2006")
    str2 := t.Format("15:04")
    fmt.Println(str)
    fmt.Println(str1)
    fmt.Println(str2)

时间常量

const (
Nanosecond Duration = 1 // 纳秒
Microsecond = 1000 * Nanosecond // 微秒
Millisecond = 1000 * Microsecond // 毫秒
Second = 1000 * Millisecond // 秒
Minute = 60 * Second // 分钟
Hour = 60 * Minute // 小时
)

// 时间常量常见的就是配合休眠函数一起使用

    for{
        //注意点: 不能使用时间常量 * 浮点类型来表示,因为不同的数据类型参与运算
        //time.Sleep(time.Second) //每隔1秒打印一次
        time.Sleep(time.Microsecond * 100) //每隔100毫秒打印一次
        fmt.Println("我打印了")
    }

时间戳
  • 从1970年1月1日到现在时间间隔
  • Unix: 返回当前时间距离1970年1月1日有多少秒
  • UnixNano: 返回当前时间距离1970年1月1日有多少纳秒
//获取时间戳
    // go语言中的时间戳是从1970年1月1日开始计算的
    //Unix: 返回当前时间距离1970年1月1日有多少秒
    //UnixNano: 返回当前时间距离1970年1月1日有多少纳秒

    //获取当前的时间戳
    fmt.Println(time.Now().Unix()) //以秒的方式表示
    fmt.Println(time.Now().UnixNano()) //以纳秒的方式表示

    //应用场景
    //生成随机数
    //在rand包中的函数

    for{
        time.Sleep(time.Second)
        //1.设置随机因子(一定要保证每次运行随机因子都不一样才能真正的生成随机数)
        rand.Seed(time.Now().UnixNano())
        //2.生成随机数
        num := rand.Intn(7) //0-6之间的随机数
        fmt.Println(num)
    }

相关文章

  • 18-Go语言时间和日期

    时间和日期函数 当前时间获取 函数:time.Now() 日期函数 日期字符串格式化 第一种格式化方法 第二种格式...

  • Go语言获取时间和日期

    如何获取当前时间time.now() 如何获取当前的年月日时分秒now.年月日时分秒 如何按照我们指定的格式生成时...

  • c语言日期和时间工具

    主要时间日期数据类型 struct tm日历日期和时间的结构体 time_t 1970 年 1 月 1 日 00:...

  • R语言日期和时间2021.2.16

    一、日期和时间数据类型 在数据分析中,将与时间变化的数据单独作为一种数据类型,称为时间序列数据。时间分析包括两个基...

  • C++---- 日期 & 时间

    C++ 标准库没有提供所谓的日期类型。C++ 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相...

  • C++<第二十篇>:日期与时间

    C++ 标准库没有提供所谓的日期类型。C++ 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相...

  • 各种时间函数的恩与怨

    C++标准库没有提供所谓的日期类型。C++继承了C语言用于日期和时间操作的结构和函数。为了使用日期和时间相关的函数...

  • 时间和日期

    时间和日期 time 包为我们提供了一个数据类型 time.Time(作为值使用)以及显示和测量时间和日期的功能函...

  • 日期和时间

    日期和时间 必须 使用 Carbon 来处理日期和时间相关的操作。

  • 日期和时间

    PHP日期和时间之取得当前的Unix时间戳 UNIX 时间戳(英文叫做:timestamp)是 PHP 中关于时间...

网友评论

      本文标题:18-Go语言时间和日期

      本文链接:https://www.haomeiwen.com/subject/csenoftx.html