4.2 KiB
What's the result of this expression?
"\"Hello\\"" + ` \"World\"`
- "Hello" "World"
- "Hello" "World" CORRECT
- "Hello"
"World" - ""Hello"
\"World\""
1: Go doesn't interpret the escape sequences in raw string literals.
2: That's right. Go interprets
\"as"but it doesn't do so for\"World\".
What's the best way to represent the following text in the code?
<xml>
<items>
<item>"Teddy Bear"</item>
</items>
</xml>
- CORRECT
`<xml>
<items>
<item>"Teddy Bear"</item>
</items>
</xml>`
"<xml>
<items>
<item>"Teddy Bear"</item>
</items>
</xml>"
"<xml>
<items>
<item>\"Teddy Bear\"</item>
</items>
</xml>"
`<xml>
<items>
<item>\"Teddy Bear\"</item>
</items>
</xml>`
2-3: You can't write a string literal like that. It can't be multiple-lines.
4: You don't need to use escape sequences inside raw string literals.
What's the result of the following expression?
len("lovely")
- 7
- 8
- 6 CORRECT
- 0
2: Remember! "a" is 1 char.
ais also 1 char.
What's the result of the following expression?
len("very") + len(`\"cool\"`)
- 8
- 12 CORRECT
- 16
- 10
1: There are also double-quotes, count them as well.
2: That's right. Go doesn't interpreted " in raw string literals.
3: Remember! "very" is 4 characters.
veryis also 4 characters.4: Remember! Go doesn't interpreted " in raw string literals.
What's the result of the following expression?
len("very") + len("\"cool\"")
- 8
- 12
- 16
- 10 CORRECT
1: There are also double-quotes, count them as well.
2: Remember! Go interprets escape sequences in string literals.
4: That's right. Go does interpret " in a string literal. So, """ means ", which is 1 character.
What's the result of the following expression?
len("péripatéticien")
HINT: é is 2 bytes long. And, the len function counts the bytes not the letters.
USELESS INFORMATION: "péripatéticien" means "wanderer".
- 14
- 16 CORRECT
- 18
- 20
1: Remember! é is 2 bytes long.
2: An english letter is 1 byte long. However, é is 2 bytes long. So, that makes up 16 bytes. Cool.
3: You didn't count the double-quotes, did you?
How can you find the correct length of the characters in this string literal?
"péripatéticien"
len(péripatéticien)len("péripatéticien")utf8.RuneCountInString("péripatéticien")CORRECTunicode/utf8.RuneCountInString("péripatéticien")
1: Where are the double-quotes?
2: This only finds the bytes in a string value.
4: You're close. But, the package's name is utf8 not unicode/utf8.
What's the result of the following expression?
utf8.RuneCountInString("péripatéticien")
- 16
- 14 CORRECT
- 18
- 20
1: This is its byte count.
RuneCountInStringcounts the runes (codepoints) not the bytes.2: That's right.
RuneCountInStringreturns the number of runes (codepoints) in a string value.
Which package contains string manipulation functions?
- string
- unicode/utf8
- strings CORRECT
- unicode/strings
What's the result of this expression?
strings.Repeat("*x", 3) + "*"
HINT: Repeat function repeats the given string.
*x*x*xx*x*x*x3*x*x*x*CORRECT
1: You're close but you missed the concatenation at the end.
2: Look closely.
3: Wow! You should really watch the lectures again. Sorry.
4: That's right. Repeat function repeats the given string. And, the concatenation operator combines the strings.
What's the result of this expression?
strings.ToUpper("bye bye ") + "see you!"
bye bye see you!BYE BYE SEE YOU!bye bye + see you!BYE BYE see you!CORRECT
1: You missed the ToUpper?
2: You're close but look closely. ToUpper only changes the first part of the string there.
3: Not even close. Sorry.
4: Perfect! Good catch! ToUpper only changes the first part of the string there.