Go語言:利用 TDD 測試驅動開發幫助理解陣列與動態陣列(切片)的區別

2023-03-20 18:01:04

Array VS Slice

陣列允許你以特定的順序在變數中儲存相同型別的多個元素。
對於陣列來說,最常見的就是迭代陣列中的元素。
我們建立一個 Sum 函數,它使用 for 來回圈獲取陣列中的元素並返回所有元素的總和。
 

先寫測試(array)

利用 TDD 思想我們需要先寫測試函數
先建立一個 sum_test.go 檔案
sum_test.go 中:
package main

import "testing"

func TestSum(t *testing.T) {

    numbers := [5]int{1, 2, 3, 4, 5}

    got := Sum(numbers)
    want := 15

    if want != got {
        t.Errorf("got %d want %d given, %v", got, want, numbers)
    }
}

陣列的容量是我們在宣告它時指定的固定值。我們可以通過兩種方式初始化陣列:

 關於其他參照型別的介紹參考