Go语言入门-《Go程序设计语言》学习笔记

入门

  • goimports可以按需管理导入声明的插入和移除。它不是标准发布版的一部分,可以通过执行下面的命令获取到:(P2最下面倒数第二行)
$ go get golang.org/xtools/cmd/goimports
  • 在Go中,所有的索引使用半开区间,即包含第一个索引,不包含最后一个索引,因为这样逻辑比较简单。P3
  • 习惯上,在一个包声明前,使用注释对其进行描述。P3

for的几种形式 P4

for initialization; condition; post{
    // ...
}

// 传统的"while"循环
for condition {
    // ...
}

// 传统的无限循环
for {
    // ...
}

for _, arg := range 切片{
    // ...
}
  • 使用显式的初始化来说明初始化变量的重要性,使用隐式的初始化来表明初始化变量不重要。P5
  • 字符串相加高性能版,使用strings包中的Join函数。P6

package main

import (
    "fmt"
    "os"
    "strings"
)

//!+
func main() {
    fmt.Println(strings.Join(os.Args[1:], " "))
}

第2章

关键字、内置的预声明的常量、类型和函数 P20

  • := 表示声明,而 = 表示赋值。一个多变量的声明不能和多重赋值搞混,后者将右边的值赋给对应的变量:P23
i, j = j, i // 交换 i 和 j 的值

package main

import "fmt"

func main() {
    i, j := 1, 2
    fmt.Printf("原 i = %v j = %v\n", i, j)

    i, j = j, i
    fmt.Printf("变 i = %v j = %v", i, j)
}

每一次变量逃逸都需要一次额外的内存分配过程。 P27

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值