Golang は、そのシンプルさと効率性により高い評価を得ている、開発者に人気のプログラミング言語です。開発者にさまざまなツールを提供しますが、その 1 つが関数です。 Golang の関数とメソッドを使用すると、開発者はプログラム内で複雑な操作や関数を実行できます。この記事では、Golang の関数型メソッドについて説明します。
まず、関数とは、Golang で特定の関数を含むコード ブロックを定義することです。関数が定義される場合、次の形式になります。
func function_name( [parameter list] ) [return_types]{ body of the function }
関数名は大文字と小文字が区別されず、宣言のかっこ内に 0 個以上のパラメーターと戻り値の型が含まれます。関数の本体には、特定の操作を実行するコード ブロックが含まれています。簡単な関数の例を次に示します。
func add(x, y int) int { return x + y }
この例では、add という関数を定義します。この関数には、両方とも整数型の 2 つのパラメーター (x と y) が含まれています。この関数は 2 つの整数の合計を返します。
次に、メソッドは Golang のカスタム型の関数を表します。メソッドは、その型の変数とフィールドにアクセスして操作できます。 Golang は、カスタム型の動作をより適切に制御するためのメソッドの定義をサポートしています。メソッドは型から呼び出される関数であり、次の形式を使用して定義します。
func (variable_name variable_data_type) function_name() [return_type]{ //function body }
これは、型 "variable_data_type" の変数をレシーバーとして受け取る "function_name" という名前のメソッドを宣言します。レシーバーは、メソッドを定義するときに関数名の前に配置され、メソッドが呼び出されるインスタンスを指定する特別なタイプのメソッド パラメーターです。
これは簡単なメソッドの例です:
type Rectangle struct { length int width int } func (r Rectangle) calculateArea() int { return r.length * r.width }
この例では、長方形オブジェクトの面積を返す「calculateArea」というメソッドを定義します。メソッドは、レシーバーとして Rectangle 型の変数を受け入れます。
Golang では、関数を変数として処理して渡すことができます。これは、いわゆる高度な関数です。これにより、開発者は関数を実行可能なエンティティとしてのみ使用し、他の変数と同様に他の関数にパラメーターとして渡すことができます。簡単な例を次に示します。
func applyOperation(x int, funcType func(int) int) int { return funcType(x) } func add2(i int) int { return i + 2 } func main() { result := applyOperation(2, add2) fmt.Println(result) }
この例では、整数と関数型パラメータを受け入れる applyOperation
という名前の関数を定義します。 main
関数では、変数 2 と add2### 関数を
applyOperation 関数に渡し、結果を result 変数に格納します。結果は4です。
func func_name(parameter ...type) [return_type] { //function body }
func sum(nums ...int) int { sum := 0 for _, num := range nums { sum += num } return sum } func main() { fmt.Println(sum(1, 2, 3, 4, 5)) }
sum という関数を定義します。
以上がGolang の関数メソッドを探索するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。