Golang은 최근 몇 년 동안 많은 주목을 받고 있는 프로그래밍 언어로, 간결한 구문과 빠른 컴파일 속도를 채택하며 동시 프로그래밍 및 네트워크 프로그래밍에 적합합니다. Golang에서는 종종 데이터 유형 변환을 수행해야 하는데, 그 중 가장 일반적인 것은 정수(int) 변환입니다. 이 기사에서는 Golang의 int 유형 변환에 대해 자세히 설명합니다.
Golang에는 네 가지 정수 유형이 있습니다.
또한 Golang은 해당하는 부호 없는 정수 유형도 제공합니다. 명명 규칙은 uint8, uint16, uint32 및 uint64와 같이 uint에 해당 자릿수를 더한 것입니다.
Golang의 유형 변환은 toType() 함수를 일률적으로 사용합니다. 여기서 toType() 함수는 변환해야 하는 변수 유형입니다. 대상 유형이 소스 유형을 완전히 수용할 수 있는지 확인하십시오.
아래에서는 설명을 위한 예로 int 유형을 float32 및 float64 유형으로 변환합니다.
2.1 int를 float32로 변환
float32의 값 범위가 int의 값 범위보다 크기 때문에 int 유형은 직접적으로 float32로 변환되었습니다. 이는 다음 코드를 사용하여 달성할 수 있습니다:
func intToFloat32(i int) float32 { return float32(i) }
2.2 int를 float64로 변환
같은 방식으로 int 유형을 float64로 직접 변환할 수도 있습니다. 이를 달성하기 위해 다음 코드를 사용할 수 있습니다.
func intToFloat64(i int) float64 { return float64(i) }
Golang에서는 toType() 함수를 사용하여 다른 유형의 데이터를 int 유형으로 변환할 수도 있습니다. 소스 유형의 값 범위가 대상 유형의 값 범위보다 큰 경우 변환 프로세스 중에 정밀도가 손실될 수 있습니다.
아래에서는 설명을 위한 예로 float32 및 float64 유형을 int 유형으로 변환합니다.
3.1 float32를 int로 변환
float32를 int로 변환하는 동안 정밀도가 손실될 수 있으므로 판단을 내리는 것이 가장 좋습니다. 변환하기 전에 다음 코드를 사용하여 구현할 수 있습니다.
func float32ToInt(f float32) int { if f > math.MaxInt32 { return math.MaxInt32 } if f < math.MinInt32 { return math.MinInt32 } return int(f) }
3.2 float64를 int
로 변환합니다. 마찬가지로 float64 유형을 int 유형으로 변환하려면 다음 코드를 사용하여 정확도 판단이 필요합니다.
func float64ToInt(f float64) int { if f > math.MaxInt32 { return math.MaxInt32 } if f < math.MinInt32 { return math.MinInt32 } return int(f) }
Golang에서는 전체 Type 변환이 매우 일반적이지만 변환 시 대상 유형이 소스 유형의 값 범위를 완전히 수용할 수 있는지 확인해야 하며 그렇지 않으면 정밀도 손실과 같은 문제가 발생한다는 점에 유의해야 합니다. 발생할 수 있습니다. 필요한 경우 변환 구현을 위한 기능을 사용자 정의할 수도 있습니다.
위 내용은 골랑 정수 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!