Golang学习:为基本类型添加方法

栏目: Go · 发布时间: 7年前

内容简介:根据go源码中的1.iota关键字只能用在const常量中,还可以使用。2.可以利用基本类型(比如int)来定义一个自己的自定义类型,然后添加自己想要的方法。同时该类型具有基本类型的属性和方法。

根据 go 源码中的 time/time.go 文件中的代码片段写了一个main方法,如下:

package main

import (
    "fmt"
    "time"
)

// A Weekday specifies a day of the week (Sunday = 0, ...).
type Weekday int

const (
    Sunday    Weekday = iota
    Monday
    Tuesday
    Wednesday
    Thursday
    Friday
    Saturday
)

var days = [...]string{
    "Sunday",
    "Monday",
    "Tuesday",
    "Wednesday",
    "Thursday",
    "Friday",
    "Saturday",
}

// String returns the English name of the day ("Sunday", "Monday", ...).
func (d Weekday) String() string { return days[d] }

func main() {
    fmt.Println(Friday.String())
    fmt.Println(Monday.String())
    fmt.Println(Tuesday.String())

    fmt.Println(time.Friday.String())
}

1.iota关键字只能用在const常量中,还可以使用。

2.可以利用基本类型(比如int)来定义一个自己的自定义类型,然后添加自己想要的方法。同时该类型具有基本类型的属性和方法。


以上所述就是小编给大家介绍的《Golang学习:为基本类型添加方法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

区块链核心算法解析

区块链核心算法解析

【瑞士】Roger Wattenhofer(罗格.瓦唐霍费尔) / 陈晋川、薛云志、林强、祝庆 / 电子工业出版社 / 2017-8 / 59.00

《区块链核心算法解析》介绍了构建容错的分布式系统所需的基础技术,以及一系列允许容错的协议和算法,并且讨论一些实现了这些技术的实际系统。 《区块链核心算法解析》中的主要概念将独立成章。每一章都以一个小故事开始,从而引出该章节的内容。算法、协议和定义都将以形式化的方式描述,以便于读者理解如何实现。部分结论会在定理中予以证明,这样读者就可以明白为什么这些概念或算法是正确的,并且理解它们可以确保实现......一起来看看 《区块链核心算法解析》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换