>  기사  >  백엔드 개발  >  Golang 데이터 변환 기술 및 예제 공유

Golang 데이터 변환 기술 및 예제 공유

PHPz
PHPz원래의
2023-12-23 10:01:18891검색

Golang 데이터 변환 기술 및 예제 공유

Golang 데이터 변환 기술과 예제가 공유됩니다

소개:
Golang은 다양한 데이터 유형 및 형식 변환을 처리할 때 많은 편리한 기능과 기술을 제공하는 강력한 프로그래밍 언어입니다. 이 기사에서는 Golang의 데이터 변환에 대한 몇 가지 실용적인 팁을 공유하고 구체적인 코드 예제를 제공합니다.

1. 문자열과 정수 간의 변환
Golang에서는 문자열과 정수 간의 변환이 자주 발생하는 요구 사항입니다. Golang은 Atoi() 및 Itoa() 함수가 문자열과 정수를 서로 쉽게 변환할 수 있는 strconv 패키지를 제공합니다.

  1. 문자열을 정수로
    샘플 코드:
package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    num, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("转换失败:", err)
        return
    }
    fmt.Println("转换后的整数:", num)
}

실행 결과:
변환된 정수: 123

  1. 정수를 문자열로
    샘플 코드:
package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 123
    str := strconv.Itoa(num)
    fmt.Println("转换后的字符串:", str)
}

실행 결과:
변환된 문자열: 123

2. 문자열과 부동 소수점 숫자
문자열과 정수 간의 변환 외에도 Golang은 문자열과 부동 소수점 숫자 간의 변환 기능도 제공합니다. 이는 가격 계산이나 정확한 계산이 필요한 기타 시나리오에서 매우 실용적인 기능입니다.

  1. 문자열을 부동 소수점 숫자로
    샘플 코드:
package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "3.14"
    num, err := strconv.ParseFloat(str, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
        return
    }
    fmt.Println("转换后的浮点数:", num)
}

실행 결과:
변환된 부동 소수점 숫자: 3.14

  1. 부동 소수점 숫자를 문자열로
    샘플 코드:
package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 3.14
    str := strconv.FormatFloat(num, 'f', -1, 64)
    fmt.Println("转换后的字符串:", str)
}

실행 결과:
변환된 문자열: 3 .14

3. 슬라이스와 문자열 간의 변환
슬라이스와 문자열 간의 변환도 Golang의 일반적인 작업 중 하나입니다. 문자열을 슬라이스로 변환하고 수정할 수 있습니다. 또는 슬라이스를 출력 또는 저장 콘텐츠로 문자열로 변환할 수 있습니다.

  1. 문자열을 슬라이스로
    샘플 코드:
package main

import (
    "fmt"
)

func main() {
    str := "hello"
    slice := []byte(str)
    slice[0] = 'H'
    fmt.Println("转换后的切片:", slice)
}

실행 결과:
변환된 슬라이스: [72 101 108 108 111]

  1. 슬라이스를 문자열로
    샘플 코드:
package main

import (
    "fmt"
)

func main() {
    slice := []byte{'H', 'e', 'l', 'l', 'o'}
    str := string(slice)
    fmt.Println("转换后的字符串:", str)
}

실행 결과:
변환된 문자열: Hello

4. 다른 데이터 유형 간의 변환
문자열, 정수 및 부동 소수점 숫자 간의 변환 외에도 Golang은 부울 및 문자와 같은 다른 데이터 유형 간의 변환 기능도 제공합니다. 문자열 간 변환, 시간과 문자열 간 변환 등 .

  1. bool과 문자열 간 변환
    샘플 코드:
package main

import (
    "fmt"
    "strconv"
)

func main() {
    b := true
    str := strconv.FormatBool(b)
    fmt.Println("转换后的字符串:", str)

    str2 := "true"
    bool, err := strconv.ParseBool(str2)
    if err != nil {
        fmt.Println("转换失败:", err)
        return
    }
    fmt.Println("转换后的bool:", bool)
}

실행 결과:
변환된 문자열: true
변환된 bool: true

  1. 시간과 문자열 간의 변환
    예제 코드:
package main

import (
    "fmt"
    "time"
)

func main() {
    now := time.Now()
    str := now.Format("2006-01-02 15:04:05")
    fmt.Println("转换后的字符串:", str)

    str2 := "2022-01-01 12:00:00"
    time, err := time.Parse("2006-01-02 15:04:05", str2)
    if err != nil {
        fmt.Println("转换失败:", err)
        return
    }
    fmt.Println("转换后的时间:", time)
}

실행 결과: 변환됨 문자열: 2022-06-20 09:54:36
변환 시간: 2022-01-01 12:00:00 +0000 UTC

요약:

이 문서에서는 Golang의 데이터 변환을 위한 몇 가지 실용적인 기술을 소개하고 구체적인 코드 예제를 제공합니다. . 이러한 기술을 통해 다양한 데이터 유형 간에 쉽게 변환하고 코드의 유연성과 재사용성을 향상시킬 수 있습니다. 독자들이 이러한 기술을 실제 개발에 적용하여 작업 효율성을 높일 수 있기를 바랍니다.

위 내용은 Golang 데이터 변환 기술 및 예제 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.