golang从零起步

切片

2018-08-20  本文已影响0人  次序
package main

import (
    "fmt"
)

func f1() {
    arr1 := []int{2, 3, 4}

    //var slice1 []type = arr1[2]

    var slice1 []int = arr1[1:]

    for _, val := range slice1 {
        fmt.Printf("--------%d-----------\n", val)
    }

}

//计算数组元素和的方法
func sum(a []int) int {
    s := 0
    for i := 0; i < len(a); i++ {
        s += a[i]
    }
    return s
}

func main() {
    //和数组不同的是,切片的长度可以在运行时修改,最小为 0 最大为相关数组的长度:
    // 切片是一个 长长度度可可变变的的数组

    //优点 因为切片是引用,所以它们不需要使用额外的内存并且比使用数组更有效率,
    //所以在 Go 代码中 切片比数组更常用

    //声明切片的格式是: var identifier []type (不需要说明长度)。

    //v := make([]int, 10, 50)
    //这样分配一个有 50 个 int 值的数组,并且创建了一个长度为 10,容量为 50 的 切片 v,该 切片 指向数
    //组的前 10 个元素。

    //Buffer 可以这样定义: var buffer bytes.Buffer 。

    f1()

    //var arr = [5]int{0, 1, 2, 3, 4}
    //sun := sum(arr[:])
    //fmt.Printf("--------%d------",sun)
}
上一篇下一篇

猜你喜欢

热点阅读