Go 语言程序:将字符串值转换为字节值


在本教程中,我们将学习如何使用 Go 编程语言将字符串值转换为字节值。

字符串值 − 字符串值只是一系列字符,例如 "abc"。字符串值始终用引号括起来。所有类型的字符都允许(即使是数字,如 "abc123")。字符串可以包含任意数量的字符。

字节值 − 字节数据类型是 8 位有符号的二进制补码整数。其最小值为 -128,最大值为 127(含)。在大型数组中,字节数据类型可用于节省内存,在内存节省至关重要的场合很有用。

示例 1:使用 []byte(string) 将字符串值转换为字节值的 Go 程序代码

语法

[]byte(string)

输入 = 我们将字符串传递给字节切片。

输出 = 返回字符串中所有字符的字节

算法

  • 步骤 1 − 导入 fmt 包

  • 步骤 2 − 启动 main() 函数

  • 步骤 3 − 声明一个字符串值

  • 步骤 4 − 将字符串值转换为字节值

  • 步骤 5 − 在屏幕上打印字节值切片

示例

package main

//import format package
import (
   "fmt"
)

// start the function main ()
// program execution starts here
func main() {
   fmt.Println("GOLANG PROGRAM TO CONVERT STRING VALUE TO BYTE VALUE")
   //declare string
   s := "SWIFT"
   fmt.Println("String value entered:\n",s)
   
   fmt.Println("After converting to Bytes value:")
   //convert string to bytes
   b := []byte(s)

   //display the slice of bytes using fmt.Println () function
   fmt.Println(b)

}

输出

GOLANG PROGRAM TO CONVERT STRING VALUE TO BYTE VALUE
String value entered:
   SWIFT
After converting to Bytes value:
[83 87 73 70 84]

描述

  • 在上面的程序中,我们首先声明 main 包。

  • 我们导入了包含 fmt 包文件的 fmt 包。

  • 现在启动 main() 函数,此函数是可执行程序的入口点。它不接受任何参数,也不返回任何内容。

  • 声明要转换为字节值的字符串值。在代码第 16 行:我们使用变量名声明并初始化一个字符串。

  • 使用 []byte(string) 函数将字符串值转换为字节值。在代码第 19 行:我们将字符串 s 传递给字节切片以将其转换为字节切片。我们将此字节切片分配给变量 b

  • 最后,我们使用 fmt.Println() 函数在屏幕上打印字节切片,该函数使用其操作数的默认格式进行格式化并写入标准输出。

  • 在此示例中,我们使用了 byte() 函数。字节是 8 位无符号整数。byte() 函数以字符串作为输入并返回数组。

示例 2:使用 Make() 函数和 Copy() 函数将字符串值转换为字节值的 Go 程序代码

语法

func make(t Type, size ...IntegerType) Type
func copy(dst, src []Type) int

算法

  • 步骤 1 − 导入 fmt 包

  • 步骤 2 − 启动 main() 函数

  • 步骤 3 − 声明一个字符串值并初始化它

  • 步骤 4 − 使用 make() 函数将字符串值转换为字节值

  • 步骤 5 − 使用内置的 copy() 函数将元素复制到目标切片

  • 步骤 6 − 在屏幕上打印字节值切片

示例

package main

//import format package

import (
   "fmt"
)

// start the function main ()
// program execution starts here
func main() {
   fmt.Println("GOLANG PROGRAM TO CONVERT STRING VALUE TO BYTE VALUE")
   // Declare a string variable
   var strToConvert string
   // initialize the string variable to be converted
   strToConvert = "JEEPERS CREEPERS"
   fmt.Println("Entered value =",strToConvert)
   // convert the string value to byte value using
   // the function make ()
   byteString := make([]byte, 10)

   // The built-in copy function copies elements
   // into a destination slice dst from a source slice src
   copy(byteString, strToConvert)
   fmt.Println("After conversion of the string value to byte:")

   // print the result using fmt.Println () function
   fmt.Println(byteString)
}

输出

GOLANG PROGRAM TO CONVERT STRING VALUE TO BYTE VALUE
Entered value = JEEPERS CREEPERS
After conversion of the string value to byte:
[74 69 69 80 69 82 83 32 67 82]

描述

  • 在上面的程序中,我们首先声明 main 包。

  • 我们导入了包含 fmt 包文件的 fmt 包。

  • 现在启动 main() 函数,此函数是可执行程序的入口点。它不接受任何参数,也不返回任何内容。

  • 声明要转换的字符串值并初始化它。

  • 使用内置函数 make() 将字符串值转换为字节值。make() 函数用于切片、映射或通道。make() 在堆上分配内存并初始化并将零或空字符串放入值中,并且 make() 返回与其参数相同的类型。

  • 接下来,我们使用内置函数 copy() 将元素从源切片复制到目标切片 dst。它返回复制的元素数,这将是 len(dst) 和 len(src) 中的较小值。结果不取决于参数是否重叠。

  • 最后,我们使用 fmt.Println() 函数在屏幕上打印字节值切片,该函数使用其操作数的默认格式进行格式化并写入标准输出

结论

在以上两个示例中,我们已成功编译并执行了 Go 语言程序代码,以将字符串值转换为字节值。在第一个示例中,我们使用了 []byte(string) 函数将字符串值转换为字节值。

在第二个示例中,我们使用了 Go 语言的两个内置函数,make() 函数和 copy() 函数,将字符串值转换为字节值。

更新于: 2023 年 10 月 7 日

31K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告