第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在循環(huán)中向地圖添加條目

在循環(huán)中向地圖添加條目

Go
慕森王 2022-01-10 11:02:41
我正在嘗試在我的應(yīng)用程序中實(shí)現(xiàn)一種將每個(gè)國家/地區(qū)的用戶分開的方法,然后將它們發(fā)送到不同的操作。這就是我現(xiàn)在所擁有的:var manyUsers zendesk.ManyUsersusers := make(map[string]zendesk.ManyUsers)for {    ...    manyUsers.AppendUsers(mysqlRequest(country, id))    users[country] = manyUsers    fmt.Printf("[%s]: %#v\n\n", country, users[country])}但我發(fā)現(xiàn)當(dāng)我添加 3 個(gè)不同的國家后,它會生成 3 個(gè)不同的密鑰,但最后一個(gè)將有來自其他國家的 3 個(gè)用戶。這是我的 AppendUsers 功能func (users *ManyUsers) AppendUsers(user User) []User {    users.Users = append(users.Users, user)    return users.Users}
查看完整描述

3 回答

?
動漫人物

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超10個(gè)贊

您基本上在循環(huán)的每次迭代中修改相同的變量manyUsers,for并在每次創(chuàng)建新映射條目時(shí)使用該單個(gè)實(shí)例作為值。


您沒有向我們展示您zendesk.ManyUser的定義方式,但如果它具有引用語義,您的所有地圖條目都將共享相同的數(shù)據(jù)。


我的猜測(鑒于不完整的問題陳述)是您需要zendesk.ManyUser在循環(huán)的每次迭代中創(chuàng)建一個(gè)新實(shí)例:


users := make(map[string]zendesk.ManyUsers)


for {

    ...

    var manyUsers zendesk.ManyUsers

    manyUsers.AppendUsers(mysqlRequest(country, id))

    users[country] = manyUsers


    fmt.Printf("[%s]: %#v\n\n", country, users[country])

}

一個(gè)顯而易見的效果演示就在那里——觀察到第一個(gè)循環(huán)的迭代修改了相同的變量,而在第二個(gè)循環(huán)中,每個(gè)迭代首先獲得一個(gè)新的變量實(shí)例。


查看完整回答
反對 回復(fù) 2022-01-10
?
尚方寶劍之說

TA貢獻(xiàn)1788條經(jīng)驗(yàn) 獲得超4個(gè)贊

manyUsers 的類型是 value 而不是 reference,所以下面的代碼可能沒問題


var manyUsers *zendesk.ManyUsers

users := make(map[string]*zendesk.ManyUsers)

......


查看完整回答
反對 回復(fù) 2022-01-10
?
白衣非少年

TA貢獻(xiàn)1155條經(jīng)驗(yàn) 獲得超0個(gè)贊


我弄清楚我需要做什么,我使用了@kostix 的建議,所以我在for循環(huán)的每次迭代中創(chuàng)建,var manyUsers zendesk.ManyUsers但我還添加了以下內(nèi)容:


manyUsers = users[country]

manyUsers.AppendUsers(mysqlRequest(country, id))

users[country] = manyUsers

將每個(gè)國家/地區(qū)的當(dāng)前值傳遞給我的manyUsers我能夠User在ManyUsers結(jié)構(gòu)中添加一個(gè)新元素并將附加值返回給users[country]. 因此,我從不匯總迭代中的數(shù)據(jù),并且每個(gè)國家/地區(qū)都獲得了正確數(shù)量的用戶。


謝謝你。


查看完整回答
反對 回復(fù) 2022-01-10
  • 3 回答
  • 0 關(guān)注
  • 149 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號