应用编程基础课第三讲:Go编程基础

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

内容简介:上面两次课我讲解了编程方面的基础知识,这次开始,我使用Go语言来做一些编程实践方面的讲解。今天先来说下Go语言中的一些我认为比较重要的知识点。关于Go的基础使用,这里不做过多介绍,可以阅读:

上面两次课我讲解了编程方面的基础知识,这次开始,我使用 Go 语言来做一些编程实践方面的讲解。

今天先来说下Go语言中的一些我认为比较重要的知识点。

关于Go的基础使用,这里不做过多介绍,可以阅读:

  1. How to Write Go Code:https://golang.org/doc/code.html
  2. Effective Go:https://golang.org/doc/effective_go.html
  3. The Way to Go:https://github.com/Unknwon/the-way-to-go_ZH_CN

重要的数据结构

slice

slice是go中最常用的数据结构之一,它相当于动态数组,了解下它的内部实现,对我们是用来说有很大的好处:

slice的数据结构示例为:

type slice struct {
    ptr *array  //底层存储数组
    len int     //当前存储了多少个元素
    cap int     //底层数组可以存储多少个元素(从ptr指向的位置开始)
}

我们常用的slice有个len和cap的概念,他们就是取len和cap这两个字段的值。

slice我们通常都用它做为动态数组使用,但slice翻译过来是切片的意思,为什么呢?

我们来看个例子:

首先,我们创建一个slice:

s := make([]int, 5)

对应的数据结构为:

之后,我们再调用:

ss := s[2:4]

我们得到:

所以两个slice,相当于是在底层array上的两个切片。

参考


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

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

人月神话

人月神话

弗雷德里克.布鲁克斯 / UMLChina翻译组、汪颖 / 清华大学出版社 / 2007-9 / 48.00元

在软件领域,很少能有像《人月神话》一样具有深远影响力和畅销不衰的著作。Brooks博士为人们管理复杂项目提供了最具洞察力的见解,既有很多发人深省的观点,又有大量软件工程的实践。本书内容来自Brooks博士在IBM公司SYSTEM/360家族和OS/360中的项目管理经验,该项目堪称软件开发项目管理的典范。该书英文原版一经面世,即引起业内人士的强烈反响,后又译为德、法、日、俄、中、韩等多种文字,全球......一起来看看 《人月神话》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试