Go语言从入门到精通-03 | 复杂数据类型

qq5c822f9bb7f5c · · 1838 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

  有的时候基本的数据类型可能不能满足我们开发的需求,我们可能需要一些数据类型的组合。比如我们要把一个班级里面所有人的平均成绩存在一起,然后计算整个班级的平均成绩。大家想一下,这种情况下应该用什么类型的变量?

  数组

  接着上面我们举的例子,如果要计算平均成绩怎么办呢?这就用到了数组的概念。数组从字面上理解就是一组数,它是指类型相同的一组数。这组数在内存中是顺序存储的,因此,我们可以通过数组名字的索引来访问其中的数据,而不同定义多个变量。

  


  图1 数组内部结构示意图

  如图1是数组内部结构的示意图,我们可以通过数组的索引访问数组内部的数据。通常数组的索引是从0开始的,0表示第一个元素。下面我们给出一个Go语言的具体示例:

  


  上面数组数量,如果有初始化的情况下可以不必指定大小,此时编译器会根据初始化的数据数量自动确定大小,具体定义的格式如下:

  var students = [...] uint32 {67, 89, 96, 87, 79}

  数组的内容还很多,我们这里先学会基本的使用,后续再详细介绍。

  结构体

  上面数组用于计算非常方便,但是如果我们需要一种数据类型表示学生,比如包含姓名、年龄和分数等,这样就比较难以实现了。这时就可以通过结构体来实现。结构体是对多种数据类型的封装,形成一个新的数据类型,之后我们就可以将该类型作为一种数据类型使用,使用的方式与普通数据类型一样。

  


  接口

  在面向对象编程中,可以这么说:“接口定义了对象的行为”, 那么具体的实现行为就取决于对象了。在Go中,接口是一组方法签名。当一个类型为接口中的所有方法提供定义时,它被称为实现该接口。它与oop非常相似。接口指定类型应具有的方法,类型决定如何实现这些方法。下面我们看一个具体的实例:

  


  好了,今天我们对基本的符合数据类型进行了基本的介绍,大家也基本可以依葫芦画瓢了。后面我们再结合实例进行深入的介绍。郑州×××医院×××:www.zzchxb120.com郑州×××医院:www.zzchxb120.com



有疑问加站长微信联系(非本文作者)

本文来自:51CTO博客

感谢作者:qq5c822f9bb7f5c

查看原文:Go语言从入门到精通-03 | 复杂数据类型

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1838 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传