string type allows you to store text, which is a series of characters. There are multiple ways to create strings. A literal string is created by writing the text between double quotes.
text := "Hello World"
Because Go strings support UTF-8, the previous example is perfectly valid. Strings hold arbitrary bytes which does not necessarily mean every string will contain valid UTF-8 but string literals will always hold valid UTF-8 sequences.
The zero value of strings is an empty string
Strings can be concatenated using the
text := "Hello " + "World"
Strings can also be defined using backticks
``. This creates a raw string literal which means characters won't be escaped.
text1 := "Hello\nWorld" text2 := `Hello World`
In the previous example,
text1 escapes the
\n character which represents a new line while
text2 contains the new line character directly. If you compare
text1 == text2 the result will be
text2 := `Hello\nWorld` would not escape the
\n character which means the string contains the text
Hello\nWorld without a new line. It would be the equivalent of typing
text1 := "Hello\\nWorld".