亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang:在一行上堆疊多個方法調用

Golang:在一行上堆疊多個方法調用

Go
富國滬深 2022-01-04 21:01:07
開始使用 Go。我正在嘗試編寫一個函數,該函數將第一個名稱命名然后將第二個命名為大寫。為什么我不能像下面那樣堆疊方法調用?(我之所以要在前面放一個 .ToLower 是因為 .Title 只將第一個字母大寫,其余部分不變)package mainimport (  "fmt"  "strings")func main() {  firstName := "mElVIn"  lastName := "themelvINATor"  fmt.Println(nameCap(firstName, lastName))}func nameCap(s1, s2 string) (str1, str2 string) {  s1 = strings.ToLower(s1).Title(s1)  s2 = strings.ToUpper(s2)  return s1, s2}
查看完整描述

1 回答

?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

您可以嘗試執行以下操作(針對您的用例進行修改,我不完全確定您要獲得的輸出):


type myString string


func main() {

    firstName := "mElVIn"

    lastName := "themelvINATor"

    fmt.Println(nameCap(firstName, lastName))

}


func (s myString) Title(ss string) string {

    return strings.Title(ss)

}


func nameCap(s1, s2 string) (str1, str2 string) {

    s1 = myString(strings.ToLower(s1)).Title(s1)

    s2 = strings.ToUpper(s2)


    return s1, s2

}

FWIW,沒有鏈接就沒有錯:


func nameCap(s1, s2 string) (str1, str2 string) {

    s1 = strings.ToLower(s1)

    s1 = strings.Title(s1)

    s2 = strings.ToUpper(s2)


    return s1, s2

}

GoPlay:http ://play.golang.org/p/BcJTuBRqbx


查看完整回答
反對 回復 2022-01-04
  • 1 回答
  • 0 關注
  • 182 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號