go string 去除引号_一起攻克面试难关:Go 面试每天一篇(第 71 天)
一起來看下昨天題目的解析:
1.關于字符串連接,下面語法正確的是?
A. str := 'abc' + '123'
B. str := "abc" + "123"
C. str := '123' + "abc"
D. fmt.Sprintf("abc%d", 123)
參考答案及解析:BD。知識點:單引號、雙引號和字符串連接。在 Go 語言中,雙引號用來表示字符串 string,其實質是一個 byte 類型的數組,單引號表示 rune 類型。
2.下面代碼能編譯通過嗎?可以的話,輸出什么?
1func?main()?{2
3????println(DeferTest1(1))
4????println(DeferTest2(1))
5}
6
7func?DeferTest1(i?int)?(r?int)?{
8????r?=?i
9????defer?func()?{
10????????r?+=?3
11????}()
12????return?r
13}
14
15func?DeferTest2(i?int)?(r?int)?{
16????defer?func()?{
17????????r?+=?i
18????}()
19????return?2
20}
參考答案及解析:43。具體解析請看《5 年 Gopher 都不知道的 defer 細節,你別再掉進坑里!》。
解析若有不妥之處,歡迎在留言區交流、指正!
看下今天的題目:
1.判斷題:對變量x的取反操作是 ~x?
2.下面代碼輸出什么,請說明原因。
1type?Slice?[]int2
3func?NewSlice()?Slice?{
4????return?make(Slice,?0)
5}
6func?(s?*Slice)?Add(elem?int)?*Slice?{
7????*s?=?append(*s,?elem)
8????fmt.Print(elem)
9????return?s
10}
11func?main()?{
12????s?:=?NewSlice()
13????defer?s.Add(1).Add(2)
14????s.Add(3)
15}
答案以及解析會在下一篇文章中給出,鼓勵大家在留言區留下答案,抱團學習,日拱一卒,每天進步一點!
ps:看完文章如果有收獲,順手花 1s 時間幫點下文末右下方的「在看」,感激!
所有學習上的成功,都只依靠兩件事 -- 策略和堅持,而堅持本身就是最重要的策略!
推薦閱讀:
Go 刷 LeetCode 系列:動態規劃(1)最長回文子串
Go 特意模糊堆和棧之后,你對 Goroutine 棧了解多少?
如果我的文章對你有所幫助,點贊、轉發都是一種支持!
給個[在看],是對我最大的支持總結
以上是生活随笔為你收集整理的go string 去除引号_一起攻克面试难关:Go 面试每天一篇(第 71 天)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hive 百分比_HIVE短期内再次突破
- 下一篇: 以太网速率怎么手动设置_OPENWRT-