Array и slice немного сбили меня с толку при изучении Golang, и я хотел поделиться тем, что узнал в процессе.
Множество
Разработчики любят фрукты 🍎 поэтому мы делаем множество фруктов
- Размер массивов определен и не может быть изменен.
- "игровая площадка"
var a [2]string // define an array of fixed size. a[0] = "apple" // assign value to the array at index 0 a[1] = "banana" fmt.println(a) // Print the array
Кусочек
- slice - это ссылка на массив
- срез имеет динамический размер
- срез более полезен, чем массив
- "игровая площадка"
Literals // this will create an array of size 3 array := [3]bool{true,false,true} // 1. this will create an array // 2. slice will be created referencing the array in step 1 slice := []bool{true,false,true}
Срез имеет длину и емкость
- длина, количество элементов, которые он содержит
- емкость — это количество элементов в базовом массиве для среза.
Сделать функцию
- срез может быть создан функцией
make
- сделать подпись из официальной документации
make( type, size, capacity) -> type : type of slice we want to make, for example []int -> size : specifies the length -> capacity : a number no smaller than size, it is the size of an underlying array. If not specified then it is same as size (2nd parameter).
- "игровая площадка"