이 튜토리얼에서는 Go 언어 내에서 사용할 수있는 모든 기본 데이터 유형을 살펴볼 것입니다.이 튜토리얼이 끝나면 언어 내에서 사용할 수있는 다양한 유형에 익숙해져야 하며 Go 프로그램 내에서 이러한 유형을 사용할 수 있는 방법에 대해 어느 정도 이해해야 합니다.

이런 종류의 자료는 배우기에 상당히 건조하고 지루할 수 있으므로 필요한 기본 사항을 다루면서 내용을 약간 재미있게 만들고 약간 흥미롭게 만들 것입니다.

데이터 유형

따라서 시작하려면 Go 프로그래밍 언어 내에 4 가지 유형의 개별 범주가 있음을 아는 것이 중요합니다.

  • 기본 유형-이 튜토리얼에서 다룰 내용
  • 집계 유형-배열 및 구조체입니다.
  • 참조 유형-포인터와 슬라이스입니다.
  • 인터페이스 유형-표준 인터페이스입니다.

정수

우리가 다룰 첫 번째 기본 유형은Integer유형입니다.

프로그램 내에서 부호 있는 정수 나 부호 없는 정수를 사용할 수 있으며 필요한 정수의 크기를 지정할 수 있습니다. 프로그램의 메모리 사용률을 최적화하려고 한다고 상상해보십시오.특정 숫자가 특정 값을 초과하지 않을 것이라는 것을 알고 있다면 해당 값에 적합한 크기를 선택할 수 있습니다.

uint 또는int끝에 int 크기를 추가하여새 정수 변수를 만들 수 있습니다.

// all numeric types default to 0

// unsigned int with 8 bits
// Can store: 0 to 255
var myint uint8

// signed int with 8 bits
// Can store: -127 to 127
var myint int8

// unsigned int with 16 bits
var myint uint16

// signed int with 16 bits
var myint int16

// unsigned int with 32 bits
var myint uint32

// signed int with 32 bits
var myint int32

// unsigned int with 64 bits
var myint uint64

// signed int with 64 bits
var myint int64

처리 할 수있는 것보다 더 큰 값을 int에 할당하려고하면 다음과 같은 점에 유의해야합니다.

var myint int8
myint = 2500

Go 컴파일러는 프로그램 실행 또는 빌드에 실패하고 2500이 오버플로된다는 사실을 출력합니다 int8. 그러나 런타임에 정수를 오버플로하면 이상한 결과가 나타날 수 있습니다. 예를 들어,이 프로그램을 실행하고 출력을 검토하십시오.

package main

import (
"fmt"
)

func main() {
fmt.Println("Hello World")

var myint int8
for i := 0; i < 129; i++ {
    myint += 1
}
fmt.Println(myint) // prints out -127

}

유형 변환

var men uint8
men = 5
var women int16
women = 6

var people int
// this throws a compile error
people = men + women
// this handles converting to a standard format
// and is legal within your go programs
people = int(men) + int(women)

부동 소수점 숫자
다음으로 부동 소수점 수에 대해 설명합니다. 이는 float32또는 두 가지 크기로 제공되며 float64표준 int64데이터 유형에 맞지 않는 예외적으로 큰 숫자로 작업 할 수 있습니다 .

var f1 float32
var f2 float64

var maxFloat32 float32
maxFloat32 = 16777216
fmt.Println(maxFloat32 == maxFloat32+10) // you would typically expect this to return false
// it returns true
fmt.Println(maxFloat32+10) // 16777216
fmt.Println(maxFloat32+2000000) // 16777216

// converting from int to float
var myint int
myfloat := float64(myint)

// converting from float to int
var myfloat2 float64
myint2 := int(myfloat2)

부울

이제 모든 기본 숫자 데이터 유형을 다루었으므로 Go에서 사용할 수있는 다른 기본 데이터 유형으로 넘어갈 수 있습니다. 첫 번째는 bool 또는 boolean 데이터 유형입니다.

부울은 true 또는 false을 나타냅니다. Go 프로그램 중 하나에서이 기능을 어떻게 사용할 수 있는지 살펴 보겠습니다.

var amazing bool
amazing = true
if amazing {
subscribeToChannel()
}

훌륭하고 간단하지만 프로그램 내에서 약간의 부울 논리를 수행하려면 어떻게 될까요? ||그리고 &&연산자를 사용하면 가능합니다!

var isTrue bool = true
var isFalse bool = false
// AND
if isTrue && isFalse {
fmt.Println("Both Conditions need to be True")
}
// OR - not exclusive
if isTrue || isFalse {
fmt.Println("Only one condition needs to be True")
}

문자열
Go 언어 내의 문자열은 우리가 문자 조각이라고 부르는 것입니다. 다음을 사용하여 새 문자열 변수를 선언 할 수 있습니다 string.

var myName string
myName = "Elliot Forbes"

상수
상수는 Go 언어 내의 최종 기본 데이터 유형입니다. 이를 통해 프로그램 실행 과정에서 변경되지 않는 불변 값을 지정할 수 있습니다.

const meaningOfLife = 42

+ Recent posts