Go   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Golang中interface{}作为函数参数和函数返回值的使用大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

转载:http://blog.csdn.net/chdhust/article/details/51436882


面给出一个例子:

[python] view plain copy
  1. packagemain
  2. import(
  3. "errors"
  4. "fmt"
  5. )
  6. typeitemstruct{
  7. NameString
  8. }
  9. func(iitem)String()String{
  10. returnfmt.Sprintf("ite@R_772_8156@:%v",i.Name)
  11. typepersonstruct{
  12. SexString
  13. }
  14. func(pperson)String()String{
  15. returnfmt.Sprintf("personname:%vsex:%v",p.Name,p.SeX)
  16. funcParse(iinterface{})interface{}{
  17. switchi.(typE){
  18. caseString:
  19. return&item{
  20. Name:i.(String),
  21. case[]String:
  22. data:=i.([]String)
  23. length:=len(data)
  24. iflength==2{
  25. return&person{
  26. Name:data[0],
  27. Sex:data[1],
  28. }else{
  29. returnnil
  30. default:
  31. panic(errors.New("typematchmiss"))
  32. returnnil
  33. funcmain(){
  34. p1:=Parse("Apple").(*item)
  35. fmt.Println(p1)
  36. p2:=Parse([]String{"zhangsan","man"}).(*person)
  37. fmt.Println(p2)
  38. }

输出结果:
copy @H_874_260@

大佬总结

以上是大佬教程为你收集整理的Golang中interface{}作为函数参数和函数返回值的使用全部内容,希望文章能够帮你解决Golang中interface{}作为函数参数和函数返回值的使用所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。