Go에서 Int32를 문자열로 변환: Int 및 Int64를 넘어서
Go에서는 별도의 작업 없이 int32를 문자열로 변환할 수 있습니다. int 또는 int64로의 중간 변환을 위해. 이를 달성하기 위한 몇 가지 접근 방식은 다음과 같습니다.
1. fmt.Sprint(i) 사용
s := fmt.Sprint(i)
이 방법은 간단한 한 줄 솔루션을 제공합니다.
2. 사용자 정의 변환 함수 생성
최적의 성능을 위해 사용자 정의 변환 함수를 생성할 수 있습니다:
func String(n int32) string { // Implementation details return string(buf[pos:]) }
3. strconv.Itoa(int(i))
s := strconv.Itoa(int(i))
사용 이 접근 방식은 먼저 int로 변환해야 하지만 상대적으로 빠른 솔루션을 제공합니다.
4. strconv.FormatInt(int64(i), 10)
s := strconv.FormatInt(int64(i), 10)
사용 이 방법은 int32를 문자열로 직접 변환하므로 strconv.Itoa보다 수행 속도가 빠릅니다.
성능 비교
이러한 방법의 효율성을 비교하기 위해 5천만 번의 반복으로 벤치마크를 수행했습니다.
Method | Time Taken |
---|---|
String | 5.5923198s |
String2 | 5.5923199s |
strconv.FormatInt(int64(i), 10) | 5.9133382s |
strconv.Itoa(int(i)) | 5.9763418s |
fmt.Sprint(i) | 13.5697761s |
결과에서 알 수 있듯이 사용자 정의 변환 함수 String은 제공합니다. 실행 시간이 가장 빠릅니다.
위 내용은 Go에서 Int32를 문자열로 변환하는 방법: 어떤 방법이 가장 빠릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!