golang slice的聲明和初始化


為什么會報錯呢?

為什么用append()卻不會報錯??

用s[i] = i+3 這種方法會報錯

 

 

 

 

 

------------------------------------------------------------

 

package main

import (
        "log"
)

func main()  {

        s := make([]int, 2, 3)
        for i:= 0; i< 10; i++ {
                //s = append(s, i+3) //為什么這種可以,下面這種不行??
                s[i] = i+3
        }

        log.Printf("%#v", s)
        log.Println("len:", len(s))
        log.Println("cap:", cap(s))
        log.Println("mm:", s[8])
        for k, v := range s {
                log.Println("k/v:", k, v)
        }
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM