好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > golang通過反射設置結構體變量的值

golang通過反射設置結構體變量的值

熱門標簽:excel地圖標注分布數據 阿克蘇地圖標注 涿州代理外呼系統 評價高的400電話辦理 電話機器人軟件免費 壽光微信地圖標注 百度地圖標注后傳給手機 外呼系統顯本地手機號 外呼系統用什么卡

如果需要動態設置struct變量field的情況下, 可以利用reflect來完成。

代碼如下:

package main
import (
 "fmt"
 "reflect"
)
// 定義結構體Person
type Person struct {
 Name string
 Age  int
}
func main() {
 person := Person{}
 fmt.Println(person) // 修改前 { 0}
 pp := reflect.ValueOf(person) // 取得struct變量的指針
 field := pp.Elem().FieldByName("Name") //獲取指定Field
 field.SetString("gerrylon") // 設置值
 field = pp.Elem().FieldByName("Age")
 field.SetInt(26)
 fmt.Println(person) // 修改后 {gerrylon 26}
}

事實上對于原始值也是一樣的, 要利用指針, 因為golang默認都是傳值, 示例如下:

var f float64 = 3.4
fmt.Println(f) // 3.4
p := reflect.ValueOf(f) // 注意這里一定要是指針, 否則傳遞給ValueOf的是f的拷貝
v := p.Elem()
v.SetFloat(3.5)
fmt.Println(f) // 3.5

總結:

反射傳入的應該是變量的指針

利用 FieldByName()方法可以設置struct的指定key的值, 非常強大。

補充:golang通過反射修改變量的值

看代碼吧~

package main
import (
	"fmt"
	"reflect"
)
func reflectTest(str interface{}) {
	fs := reflect.ValueOf(str)
	fs.Elem().SetString("jack")
	fmt.Printf("%v\n" ,fs.Elem())
}
func main(){
	var str string = "tom"
	reflectTest(str)
	fmt.Println(str)
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • go語言 全局變量和局部變量實例
  • golang 在windows中設置環境變量的操作
  • 詳解Go語言變量作用域
  • 關于Golang變量初始化/類型推斷/短聲明的問題
  • 淺談golang并發操作變量安全的問題
  • go語言的初始化順序,包,變量,init詳解
  • 解決golang 關于全局變量的坑

標簽:吐魯番 重慶 汕頭 梅河口 蘭州 雞西 欽州 銅川

巨人網絡通訊聲明:本文標題《golang通過反射設置結構體變量的值》,本文關鍵詞  golang,通過,反射,設置,結構,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《golang通過反射設置結構體變量的值》相關的同類信息!
  • 本頁收集關于golang通過反射設置結構體變量的值的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 姐弟乱淫小说| 天天躁日日躁AAAAXXXX欧美| 国产乱妇毛片P5o| 强制憋尿失禁羞辱| 日本边摸边吃奶边做很爽视频| 911精品A片在线观看网站| 91久久精品无码一区二区三区| 日韩免费高清完整版| 无遮挡无删动漫肉在线观看| 七零年代肉多荤文高H| 一边吃奶一边做着爱| bnb998八度免费影院长津湖| 337p亚洲日本欧洲大胆| 日韩h| 污污动态| 久久久久久久精品无码AV少妇| 亚洲天堂免费观看| 干我| 黄色网在线看| 好大好硬好深好爽h文| 无码人妻精品一区二区三区蜜臀百度 | 河南亚洲裸胖妇体ⅩⅩⅩXXX| 老头巨大又粗又长XXXXX| 爆操美女校花| 在线观看日本视频| 欧美日韩久久久A片一级试看网站 鉴黄师成人免费视频 | 在公交车上强进我体内| 日本xxxxxxxxx18| www.778.com色婬免费| GayFuCKⅩⅩⅩⅩHD男男| 闺蜜放荡交换h| 日韩电影天堂| 中国老熟女重囗味HDXX| 福利国产91| 外国爱爱视频| 国产精品亚洲AV毛片一区二区三区| 公含着小娇乳h| 客厅和亲妺妺好紧H| 双男主有车车的腐肉免费阅读| 杨幂醉酒视频1分13秒在线完整免费观看| 好男人官网在线观看免费播放中文|