久久国产乱子伦精品免费M,亚洲一区二区三区91,欧美国产在线视频,国产精品视频久久

Go 語言拓展以有類型

在開發中,僅僅使用 Go 語言自帶的變量是無法滿足我們的業務需求的,就算勉強能滿足,對我們整個項目代碼后期的維護和其可讀性,都會帶來很大的不便。所以幾乎所有語言都支持自定義數據類型,用于拓展已有的數據類型來適應日新月異的開發場景。在 Go 語言中可以使用?type?關鍵字自定義數據類型。

 

1. 自定義復雜類型

我們可以使用type Name Type去自定義一個全新的數據類型。這個類型的變量就使用Name來聲明。通常type用于將一個復雜的數據類型定義為一個全新的數據類型,便于后續使用。

代碼示例

代碼塊
  • 1? package main
  • 2
  • 3? import (
  • 4? ? ? ? ? "fmt"
  • 5? ? ? ? ? "reflect"
  • 6? )
  • 7
  • 8? type stringList []string
  • 9
  • 10? func main() {
  • 11? ? ? ? strList := stringList{"test1", "test2"}
  • 12? ? ? ? fmt.Println("strList的數據類型:", reflect.TypeOf(strList))
  • 13? ? ? ? fmt.Println("strList的值:", reflect.ValueOf(strList))
  • 14? }
  • 第 8 行:自定義一個數據類型,這個數據類型為字符串切片,命名為 stringList;
  • 第 11 行:給變量 strList 定義為 stringList 類型并賦值;
  • 第 12 行:打印 strList 的數據類型;
  • 第 13 行:打印 strList 的值。

執行結果:

圖片描述

 

2. 別名

type關鍵字還有一種用法,就是以已經存在的數據類型進行類型自定義,這種用法就叫做別名。顧名思義,就是給已經存在的數據類型起一個新名字。常用于使用常量來開發枚舉功能時,也是前文在介紹使用常量代替枚舉時的使用方式。

代碼示例

代碼塊
  • 1? package main
  • 2
  • 3? import (
  • 4? ? ? ? ? "fmt"
  • 5? )
  • 6
  • 7? type Grade int
  • 8
  • 9? const (
  • 10? ? ? ? FirstGrade Grade = iota
  • 11? ? ? ? SecondGrade
  • 12? ? ? ? ThirdGrade
  • 13? ? ? ? FourthGrade
  • 14? ? ? ? FifthGrade
  • 15? ? ? ? SixthGrade
  • 16? )
  • 17
  • 18? func main() {
  • 19? ? ? ? fmt.Println("FirstGrade :", FirstGrade)
  • 20? ? ? ? fmt.Println("SecondGrade:", SecondGrade)
  • 21? ? ? ? fmt.Println("ThirdGrade :", ThirdGrade)
  • 22? ? ? ? fmt.Println("FourthGrade:", FourthGrade)
  • 23? ? ? ? fmt.Println("FifthGrade :", FifthGrade)
  • 24? ? ? ? fmt.Println("SixthGrade :", SixthGrade)
  • 25? }
  • 第 7 行:給int類型定義一個名為 Grade 的別名。

執行結果:

圖片描述

 

3. 小結

本文主要介紹了自定義類型?type?關鍵字的兩個用法:自定義復雜類型別名。其實這兩種用法的特性就是一致的,就是使用?type?關鍵字,在 Go 語言中定義了一種 Go 語言中原先不存在的數據類型。

文章來源于網絡,侵刪!

相關新聞

歷經多年發展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網絡安全、云原生、Go、Python開發專業人才培訓機構!

    1. 主站蜘蛛池模板: 印江| 赤城县| 伊春市| 册亨县| 凌云县| 丰原市| 荆州市| 霍邱县| 金溪县| 手游| 五峰| 怀集县| 莆田市| 华亭县| 临清市| 手游| 含山县| 鄢陵县| 浦县| 安化县| 永福县| 田阳县| 兴仁县| 邢台县| 安平县| 彰化县| 子长县| 南宫市| 子洲县| 揭东县| 交口县| 剑川县| 常宁市| 朝阳区| 乐平市| 普宁市| 越西县| 江川县| 宜宾市| 南川市| 上蔡县|