广告
返回顶部
首页 > 资讯 > 精选 >Go语言的数据类型及数组有哪些
  • 451
分享到

Go语言的数据类型及数组有哪些

2023-07-04 15:07:18 451人浏览 八月长安
摘要

今天小编给大家分享一下Go语言的数据类型及数组有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Go语言身世简介Go(又称

今天小编给大家分享一下Go语言的数据类型及数组有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

Go语言身世简介

Go(又称 golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近,但功能上有:内存安全GC(垃圾回收),结构形态及 CSP-style 并发计算。

Go语言的第一个程序

我们使用的IDE工具GoLand(没错,又是Jetbrains家的产物,我是重度爱好者),在写Go程序之前,我们首先得配置好Go语言的开发环境,这里就不做赘述,相信凭借各位的能力,一定能够没问题

package mainimport "fmt"func main() {    fmt.Println(123456)}

这里是Go语言的第一个程序,我们把这个程序拆分下来细看一下

首先是package,相信有语言基础的同学都能够明白这个是的意思,我们导入的是main的包,读者可以理解为一种约定俗成,没有main的话,你的Go程序会出现奇奇怪怪的问题

其次,是import,这里指的是导入的意思,我们导入了fmt这个库,经过求证,fmt该库是用来格式化输入输出,也就是我们所说的java中的System.out.println();或者是JavaScript中的console.log(),这么一说,相信大家也不陌生

Go语言的数据类型

在介绍数据类型之前,想为读者介绍的是,Go语言是没有以分号结尾的这个习惯,而且是先声明var类型(一般情况下都是var类型的数据),紧接着声明变量名数据类型

var name stringvar age intvar sex bool

同时我们还加入了一种懒人写法,想到这里大家可能就想到了结构体,将同种声明含义的变量放到一个大括号里面,没错,在Go语言中也能过实现这一操作

var (        name string        age int        sex bool        pwd float32    )

这么一看,似乎下面的方法要高效的多

Go语言匿名变量

很多小伙伴第一次看到这个匿名变量,有点发懵。其实可以这么理解,匿名变量顾名思义,就是不想让人知道,在Go语言中我们可以用_来代替,要注意的是:匿名变量不占用命名空间,不会分配内存

func foo() (int, string) {    return 10, "Q1mi"}func main() {    x, _ := foo()    _, y := foo()    fmt.Println("x=", x)    fmt.Println("y=", y)}

在这个代码块中我们可以看到,我们定义了一个foo方法用于保存相关参数,第一个参数类型为int,第二个参数类型为string;紧接着我们在main方法中,使用匿名变量去调用foo方法,为了体现差异,我们进行二次方法调用,最后输出的结果显而易见(写上方的demo是为了验证匿名变量的使用)

Go语言的数据类型

iotago语言的常量计数器,它只能在常量的表达式中使用(作者觉得这一点非常的人性化,因为以往在java中,这一功能需要声明一个变量+for循环才能实现,go语言yyds!

贴一张从Google找的图片,请读者自行查阅数据类型及其所对应的范围

类型长度(字节)默认值说明
bool1false
byte10uint8
rune40Unicode Code Point, int32
int, uint4或8032 或 64 位
int8, uint810-128 ~ 127, 0 ~ 255,byte是uint8 的别名
int16, uint1620-32768 ~ 32767, 0 ~ 65535
int32, uint3240-21亿~ 21亿, 0 ~ 42亿,rune是int32 的别名
int64, uint6480
float3240.0
float6480.0
complex648

complex12816

uintptr4或8
以存储指针的 uint32 或 uint64 整数
array

值类型
struct

值类型
string
“”UTF-8 字符串
slice
nil引用类型
map
nil引用类型
channel
nil引用类型
interface
nil接口
function
nil函数

Go语言中的数组

今天作者花了大量的时间来学习Go语言,其中有一半的时间都花在了数组上面

首先我们来看Go语言文档中对于数组的定义

数组:是同一种数据类型的固定长度的序列。

数组定义:var a [len]int,比如:var a [5]int,数组长度必须是常量,且是类型的组成部分。一旦定义,长度不能变。

长度是数组类型的一部分,因此,var a[5] int和var a[10]int是不同的类型。

数组可以通过下标进行访问,下标是从0开始,最后一个元素下标是:len-1

很多读者反应:你给我们看这些也没用啊,没有实际的例子我们看不懂!!!

一维数组

func main() {    a := [3]int{1, 2}    b := [...]int{1, 2, 3, 4}    c := [5]int{2: 100, 4: 100}    d := [2]struct {        name string        age  uint8    }{        {"user1", 10},        {"user2", 20},    }    fmt.Println(a, b, c, d)}

对于上方代码,我们做出如下的详细解析

  • 首先我们可以看到a变量开拓了一个数组长度为3的变量,但是只声明了2个变量,还有一个变量未进行变量初始化,在Go语言中,我们将未定义的数组的初始化变量为0

  • 其次我们可以看到b变量开拓了一个任意长度的数组,同时进行相应的赋值操作,在Go语言中,如果我们不确定数组的长度,我们就可以使用...来代替数组的长度,类似于一种动态数组

  • 紧接着我们可以看到c变量比较特殊,在变量里面声明了相关数值,c数组里面的第一个2是代表从第三个开始输出100,4同理

  • 最后数组d采用结构体的形式,在结构体之前声明该结构体所需的容量

这里就有小伙伴要问了,能不能使用...来代替结构体前面的数字,作者给出的答复是:可以但没必要;因为你下面的括号里面要声明具体的数据类型所对应的值,你既然能够知道具体有几个数来对应数据类型,又何必使用...来代替呢?

二维数组

func main() {    a := [2][3]int{{1, 2, 3}, {4, 5, 6}}    b := [...][2]int{{1, 1}, {2, 2}, {3, 3}}    fmt.Println(arr0, arr1)    fmt.Println(a, b)}

对于上方代码,我们做出如下的详细解析

  • 首先我们可以看到a数组定义了一个长2宽3的数组,第一个数组里面存放的是123,第二个数组里面存放的是456,相信这一步对绝大部分读者来说并无异议

  • 其次,我们可以看到的是,在b数组中,我们使用...来自定义数组长度,这一点有效的解决了动态数组容量的问题。值得一提的是,在二维数组里面,我们不能将第二个维度的数组设置成...,否则数组的长度及定义就会出现歧义

以上就是“Go语言的数据类型及数组有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: Go语言的数据类型及数组有哪些

本文链接: https://www.lsjlt.com/news/346220.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Go语言的数据类型及数组有哪些
    今天小编给大家分享一下Go语言的数据类型及数组有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Go语言身世简介Go(又称...
    99+
    2023-07-04
  • Go语言数据类型有哪些
    这期内容当中小编将会给大家带来有关Go语言数据类型有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。基本数据类型说明类型描述uint32位或64位uint8无符号 8 ...
    99+
    2022-10-18
  • go语言的数据类型有哪些
    go语言的数据类型有基本数据类型、复合数据类型、引用类型和特殊数据类型等。详细介绍:1、基本数据类型有bool、int、uint、float32、float64、complex64等;2、复合数据类型有string、array、slice、...
    99+
    2023-07-31
  • go语言中数据类型有哪些
    这篇文章将为大家详细讲解有关go语言中数据类型有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。go语言的数据类型有:1、布尔型;2、数值类型(可分为整型和浮点型);3、字符串类型;4、指...
    99+
    2023-06-15
  • Go语言中的数据类型有哪些?
    作为一门现代的编程语言,Go语言提供了多种数据类型来支持不同的编程需求。本文将对Go语言中常见的数据类型进行介绍,并附上演示代码。 布尔型(bool) 布尔型数据类型只有两个值:true和false。在Go语言中,布尔型通常用于条件判...
    99+
    2023-08-13
    数据类型 教程 函数
  • go语言的数据类型有哪些特点
    数据类型特点有静态类型、强类型、内存安全、支持指针、丰富的数据类型、支持自定义类型、并发安全等。详细介绍:1、静态类型:Go语言是静态类型语言,变量在声明时必须指定类型,并且不能随意改变其类型;2、强类型:Go语言是强类型语言,不允许不同类...
    99+
    2023-12-14
    go语言 数据类型
  • Go语言中的数据类型有哪些及类型间怎么转换
    这篇“Go语言中的数据类型有哪些及类型间怎么转换”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Go语言中的数据类型有哪些及类...
    99+
    2023-06-30
  • 数据类型在Go语言中有哪些常见的类型?
    Go语言是一种快速、简洁、安全的编程语言,它的强类型系统和丰富的数据类型使其成为了一种非常流行的编程语言。在Go语言中,常见的数据类型有哪些呢?本文将详细介绍Go语言中常见的数据类型。 一、基本数据类型 布尔型(bool) 布尔型只有两...
    99+
    2023-08-05
    对象 接口 数据类型
  • Go语言中的Windows数据类型都有哪些?
    Go语言是一门跨平台的编程语言,可以在不同的操作系统上进行开发。在Windows操作系统上,Go语言提供了一些专门用于处理Windows数据类型的库。本文将介绍Go语言中的Windows数据类型及其使用方法。 一、Windows数据类型 在...
    99+
    2023-09-12
    windows 数据类型 关键字
  • Go语言中有哪些常用的数据类型?
    作为一门现代化的编程语言,Go语言提供了一系列的数据类型来支持各种类型的数据操作。在本篇文章中,我们将介绍Go语言中的常用数据类型,并演示它们的使用方式。 整型 Go语言提供了多种整型数据类型,包括int8、int16、int32、i...
    99+
    2023-06-25
    npm 框架 数据类型
  • Go语言中数据类型的分类及其应用场景有哪些?
    作为一门静态类型语言,Go语言中的数据类型非常重要。在Go语言中,所有的数据都是以某种数据类型存在的。在本文中,我们将会介绍Go语言中数据类型的分类以及它们的应用场景。同时,我们也会穿插一些演示代码,帮助你更好地理解这些概念。 一、Go语...
    99+
    2023-08-05
    对象 接口 数据类型
  • go语言有哪些类型
    go语言的类型有布尔型(bool)、整型(int8、byte、int16等)、浮点型(float32、float64)、复数类型(complex64、complex128)、字符串、字符型、错误型、指针、数组、切片、字典、通道、结构体、接口...
    99+
    2023-05-14
    Go go语言 Golang
  • go语言类型有哪些
    go语言类型有布尔类型、整数类型、浮点数类型、字符串类型、数组类型、切片类型、结构体类型、字典类型、函数类型等。详细介绍:1、布尔类型只有两个值,即true和false;2、整数类型包括int8、int16、int32、int64和相应的无...
    99+
    2023-07-31
  • R语言数据类型有哪些
    这篇文章主要介绍了R语言数据类型有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。R语言用来存储数据的对象包括: 向量, 因子, 数组, 矩阵, 数据框, 时间序列(ts)...
    99+
    2023-06-14
  • GO语言中有哪些优秀的数据类型框架?
    在GO语言中,数据类型框架是非常重要的。这些框架可以帮助我们更好地管理和操作数据,提高代码的可读性和可维护性。在本文中,我们将介绍一些优秀的GO语言数据类型框架,以及它们的优点和缺点。 GORM GORM是一个非常流行的GO语言ORM...
    99+
    2023-07-03
    数据类型 框架 git
  • go语言有哪些类型及怎么表示
    本篇内容主要讲解“go语言有哪些类型及怎么表示”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“go语言有哪些类型及怎么表示”吧!go语言的类型有布尔型(bool)、整型(int8、byte、int...
    99+
    2023-07-04
  • 详解Go语言中的数据类型及类型转换
    目录1、基本数据类型2、基础数据类型转换3、基本数据类型转为字符串4、strconv的使用5、字符串转为基础类型1、基本数据类型 数据类型有很多,先研究一下基础的,例如:布尔型、数字...
    99+
    2022-11-13
  • C语言中数据类型有哪些
    这篇文章主要为大家展示了“C语言中数据类型有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C语言中数据类型有哪些”这篇文章吧。数据的存储首先就要说到数据的类型,类型决定了看待内存空间的视角。...
    99+
    2023-06-25
  • R语言中的数据类型有哪些
    这篇文章给大家介绍R语言中的数据类型有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。以上数据类型均为原子向量。单引号和双引号不做区分。R语言中TRUE和FALSE 可以简化为T和F多元素向量的生成方式方式 1:使用...
    99+
    2023-06-14
  • Go数据类型有哪些
    这篇文章主要介绍“Go数据类型有哪些”,在日常操作中,相信很多人在Go数据类型有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go数据类型有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!Go有四种...
    99+
    2023-07-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作