Go 언어는 Google이 2009년에 개발한 빠르고 안전하며 신뢰할 수 있는 프로그래밍 언어입니다. Go 언어의 유형 시스템은 간단하고 명확하며 강력한 유형입니다.
Go 언어에서는 기본 유형에는 부울, 정수, 부동 소수점, 복소수, 문자열 및 포인터 유형 등이 포함됩니다. 또한 Go 언어는 배열, 슬라이스, 맵, 채널, 인터페이스 및 구조와 같은 몇 가지 복잡한 유형도 제공합니다. 다음으로 Go언어의 기본형과 복합형을 자세히 소개하겠습니다.
1. 기본 유형
Boolean 유형은 true와 false 두 가지 값만 가집니다. 대소문자를 구분하지 않으며 bool 유형으로 표현됩니다. 예:
var b bool = true
integer 유형은 int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64를 포함한 Go 언어의 기본 유형 중 하나입니다. 및 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
문자열 유형은 큰따옴표로 묶인 문자 시퀀스를 나타내는 데 사용됩니다. 예:
var s string = "Hello, world!"
포인터 유형은 메모리 주소를 나타내는 데 사용되며 변수에 간접적으로 액세스하고 메모리를 할당하는 데 사용할 수 있습니다. 예:
var p *int = &i
2. 복합 유형
배열은 동일한 데이터 유형을 가진 변수의 순서가 지정된 모음입니다. 배열의 길이는 고정되어 있으므로 정의할 때 길이를 지정해야 합니다. 예:
var a [3]int = [3]int{1, 2, 3}
Slicing은 일종의 배열 캡슐화로 메모리를 동적으로 할당하며 길이가 변경될 수 있습니다. 슬라이스는 길이를 지정할 필요가 없으며 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!