Go Sprache Passing Arrays an Funktionen
Wenn Sie ein Array von Argumenten an eine Funktion übergeben möchten, können Sie eine Funktionsdefinition benötigen, erklären die Parameter als ein Array, können wir die folgenden zwei Möglichkeiten erklären:
Einbahnstraße
Parametereinstellung Feldgröße:
void myFunction(param [10]int) { . . . }
Zweiter Weg
Dieser Parameter wird nicht Array-Größe festgelegt:
void myFunction(param []int) { . . . }
Beispiele
schauen wir uns die folgenden Beispiele, erhält Beispiele Funktion ein Integer-Array-Parameter, gibt ein anderer Parameter die Anzahl der Array-Elemente und gibt den Mittelwert:
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; }
Als nächstes rufen wir die Funktion:
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; }
Beispiele für die Durchführung der oben genannten Ausgabe ist:
平均值为: 214.000000
Wir verwenden das obige Beispiel Formparameter und der eingestellten Feldgröße.