Golang 将字符串值转换为字节值
在本教程中,我们将学习如何使用Golang编程语言将字符串值转换为字节值。
字符串值-字符串值只是一系列字符,如”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]
描述
-
在上述程序中,我们首先声明了包的主要部分。
-
我们导入了包含fmt包的文件的fmt包。
-
现在开始main()函数,这个函数是可执行程序的入口点。它不接受任何参数,也不返回任何内容。
-
声明要转换的字符串值并进行初始化。
-
使用内置函数make()将字符串值转换为字节值。make()函数用于切片、映射或通道。make()函数在堆上分配内存并初始化和空字符串放入值中,并且make()函数返回与其参数相同的类型。
-
接下来,我们使用内置函数copy()将源切片中的元素复制到目标切片dst中。它返回被复制的元素个数,这个个数将是len(dst)和len(src)中的最小值。结果不会受到参数是否重叠的影响。
-
最后,通过使用函数fmt.Println()将字节值切片打印在屏幕上,该函数使用默认格式对其操作数进行格式化并写入标准输出。
结论
在上述两个示例中,我们成功编译并执行了将字符串值转换为字节值的golang程序代码。在第一个示例中,我们使用[]byte(string)函数将字符串值转换为字节值。
在第二个示例中,我们使用了golang的两个内置函数,make()函数和copy()函数,将字符串值转换为字节值。