Go язык передачи массивов в функции
Если вы хотите передать массив аргументов функции, вам необходимо определение функции, объявить параметр как массив, мы можем объявить следующие два способа:
Один из способов
Параметр Размер массива настройки:
void myFunction(param [10]int) { . . . }
Второй способ
Параметр не установлен размер массива:
void myFunction(param []int) { . . . }
примеров
Давайте посмотрим на следующие примеры, примеры функция принимает параметр массива целое, другой параметр указывает количество элементов массива и возвращает среднее значение:
func getAverage(arr []int, int size) float32 { var i int var avg, sum float32 for i = 0; i < size; ++i { sum += arr[i] } avg = sum / size return avg; }
Далее мы называем функцию:
package main import "fmt" func main() { /* 数组长度为 5 */ var balance = []int {1000, 2, 3, 17, 50} var avg float32 /* 数组作为参数传递给函数 */ avg = getAverage( balance, 5 ) ; /* 输出返回的平均值 */ fmt.Printf( "平均值为: %f ", avg ); } func getAverage(arr []int, size int) float32 { var i,sum int var avg float32 for i = 0; i < size;i++ { sum += arr[i] } avg = float32(sum / size) return avg; }
Примеры реализации вышеуказанной продукции является:
平均值为: 214.000000
Мы используем пример выше параметра формы и размера набора массива.