go語言常用函數

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
  • append

  append:在切片末尾添加元素並返回結果。append函數原型:func append(slice []T, elements...T) 。其中T表示任意類型。

  樣本1:

1     arr1 := []int{1, 2, 3}2     arr2 := append(arr1, 4, 5, 6)3     fmt.Println(arr2) // 輸出:1,2,3,4,5,6

  append不僅能在切片末尾添加普通元素,還能在切片末尾添加切片。

1     arr1 := []int{1, 2, 3}2     arr2 := []int{4, 5, 6}3     arr3 := append(arr1, arr2...) // 此處必須要有 ... 否則編譯器會報類型錯誤4     fmt.Println(arr3) // 輸出:1,2,3,4,5,6
  • copy

   copy:用於從一個數組切片複製到另一個數組切片。如果加入的兩個數組切片不一樣大,就會按其中較小的那個數組切片的元素個數進行複製。下面的樣本展示了copy()函數的行為:

  slice1 := []int{1, 2, 3, 4, 5}
  slice2 := []int{5, 4, 3}
  copy(slice2, slice1) // 只會複製slice1的前3個元素到slice2中  結果:slice2=1,2,3
  copy(slice1, slice2) // 只會複製slice2的3個元素到slice1的前3個位置

  個人疑問:既然copy能複製數組切片,那麼能否複製數組呢?

  疑問解答:通過實踐測試,copy不能複製數組。編譯時間報錯:arguments to copy must be slices;

  • range

  range:其含義是在一個數組中遍曆每一個值,返回該值的下標值和此處的實際值。

1 func main() {2     array := [5]int{1, 2, 3, 4, 5}3     for i, v := range array {4         fmt.Println("array[", i, "] = ", v)5     }6 }

array[ 0 ] = 1
array[ 1 ] = 2
array[ 2 ] = 3
array[ 3 ] = 4
array[ 4 ] = 5

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.