Avatar ·

Como converter uma string em um slice de bytes ([]byte) em Go?

Olá a todos! Comecei a estudar Go recentemente e encontrei um problema. Preciso escrever uma string em um array de bytes, mais precisamente em um slice `[]byte`. Eu sei que em Go strings são uma sequência imutável de bytes codificados em UTF-8, e um slice de bytes é uma estrutura mutável. Mas não entendo como conectá-los.\n\nAqui está o que tentei:\n\n```go\npackage main\n\nimport "fmt"\n\nfunc main() {\n var s string = "Hello, Go!"\n var b []byte\n\n // Primeira tentativa: apenas atribuir\n b = s // Erro: cannot use s (type string) as type []byte in assignment\n\n // Segunda tentativa: criar um slice e copiar\n b = make([]byte, len(s))\n copy(b, s) // Funcionou, mas não tenho certeza se está correto\n\n fmt.Println(b)\n}\n```\n\nPergunta: como converter corretamente e eficientemente uma string em um slice de bytes?