Go 言語は、2009 年に Google によって開発された高速、安全、信頼性の高いプログラミング言語です。 Go 言語の型システムはシンプルかつ明確で、強力に型付けされています。
Go 言語では、基本型にはブール型、整数型、浮動小数点型、複素数型、文字列型、ポインタ型などが含まれます。さらに、Go 言語は、配列、スライス、マップ、チャネル、インターフェイス、構造体などのいくつかの複雑な型も提供します。次にGo言語の基本型と複合型について詳しく紹介していきます。
1. 基本型
ブール型には true と false の 2 つの値しかありません。大文字と小文字は区別されません。ブール型。例:
var b bool = true
整数型は Go 言語の基本型の 1 つで、int、int8 などがあります。 、int16、int32、int64、uint、uint8、uint16、uint32、uint64、uintptr など。このうち、int、uint、および uintptr はシステム関連の型であり、オペレーティング システムやハードウェア アーキテクチャに応じて異なるビット数と値の範囲を持つことができます。例:
var i int = 100
var ui uint = 100
var uptr uintptr = 0x123456789abcdef0
浮動小数点型は float32 と float64 に分けられ、浮動小数点数を表すために使用されます。例:
var f32 float32 = 3.1415
var f64 float64 = 3.141592653589793
複素数型は実数で構成されます。部 と 虚部 は、complex64 と complex128 に分割され、複素数を表すために使用されます。例:
var c64 complex64 = 3 4i
var c128 complex128 = 3 4i
String 型は表現に使用されます。二重引用符で囲まれた文字シーケンス。例:
var s string = "Hello, world!"
ポインタ型はメモリアドレスを表すために使用され、間接的な変数へのアクセスやメモリの割り当てなどに使用できます。例:
var p *int = &i
2. 複合型
配列とは、次のようなグループです。同じデータ タイプの変数の順序付けされたコレクション。配列の長さは固定されており、定義時に長さを指定する必要があります。例:
var a [3]int = [3]int{1, 2, 3}
スライスは配列用ですメモリを動的に割り当てるパッケージであり、長さは変化する可能性があります。スライスは長さを指定する必要はなく、make 関数を使用して作成されます。例:
var s []int = make([]int, 3)
s[0] = 1
s[1] = 2
s[2] = 3
マッピングは、キーと値のペアのデータ構造であり、辞書または連想配列とも呼ばれます。マップのキーと値は任意のタイプにすることができ、make 関数を通じて作成されます。例:
var m map[string]int = make(map[string]int)
m["one"] = 1
m["two"] = 2
Channel は、コルーチン間の通信に使用されるメカニズムであり、データの同期と共有を実現できます。チャネルはバッファ付きチャネルとバッファなしチャネルに分けられ、make 関数を使用して作成されます。例:
var ch chan int = make(chan int, 3)
ch <- 1
ch <- 2
ch <- 3
インターフェースは動作を定義し、特定のメソッドの実装に同意することでインターフェースを実装するタイプです。インターフェイスはポリモーフィズムを実現し、プログラムの柔軟性と拡張性を向上させることができます。例:
type MyInterface インターフェイス {
MyMethod() int
}
構造は、複数のフィールドの組み合わせです。 形成されるタイプ一緒に。構造体のフィールドは型指定されており、他の構造体タイプのフィールドを含めることもできます。例:
type Person struct {
Name string Age int
}
3. 概要
Go 言語の型システムは、シンプルかつ明確で、強力に型指定されています。基本型には、ブール型、整数型、浮動小数点型、複素数型、文字列型、ポインタ型などがあります。複合タイプには、配列、スライス、マップ、チャネル、インターフェイス、構造などが含まれます。 Go 言語の基本型と複雑な型に習熟すると、プログラミングの効率とコードの品質が向上します。
以上がGo 言語の基本型と複合型の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。