github.com/nibnait/go-learn@v0.0.0-20220227013611-dfa47ea6d2da/src/test/chapter/ch1/07_array_test.go (about)

     1  package ch1
     2  
     3  import (
     4  	"fmt"
     5  	"github.com/stretchr/testify/assert"
     6  	"testing"
     7  )
     8  
     9  func TestArrayInit(t *testing.T) {
    10  	var arr [3]int
    11  	t.Log(arr[1], arr[2], arr[0])
    12  
    13  	arr1 := [4]int{1, 2, 3, 4}
    14  	t.Log(arr1[0], arr1[1], arr1[2])
    15  
    16  	arr2 := [...]int{1, 2, 3, 4}
    17  	t.Log(arr2[0], arr2[1], arr2[2])
    18  }
    19  
    20  func TestArrayTravel(t *testing.T) {
    21  	arr := [...]int{1, 2, 3, 4}
    22  
    23  	for i := 0; i < len(arr); i++ {
    24  		t.Log(arr[i])
    25  	}
    26  
    27  	fmt.Println()
    28  	for idx, elem := range arr {
    29  		t.Log(idx, elem)
    30  	}
    31  	fmt.Println()
    32  	for _, elem := range arr {
    33  		t.Log(elem)
    34  	}
    35  
    36  }
    37  
    38  //切片
    39  func TestArraySection(t *testing.T) {
    40  	arr := [...]int{0, 1, 2, 3, 4, 5}
    41  
    42  	assert.Equal(t, []int{1}, arr[1:2])
    43  	assert.Equal(t, []int{1, 2}, arr[1:3])
    44  	assert.Equal(t, []int{1, 2, 3, 4, 5}, arr[1:])
    45  	assert.Equal(t, []int{0, 1, 2}, arr[:3])
    46  }