Go 之基礎速學 (八) 方法當中的返回值問題(小白篇)

huxiaobai_001發表於2020-05-07

技術的學習均來自“程式設計師在囧途” 網址:www.jtthink.com

給我這種小白看的,大神請繞過

package main

import (
   "fmt"
   "github.com/pquerna/ffjson/ffjson")

func main(){
  //第三方包的使用 json化結構體 if  else的初次使用 案例一
  //初始化結構體
  news:=TestStrutOne{112233,"biaoti"}
   //news.Tojson() 你就把ToJson()理解我TestStrutOne結構體裡面的方法就行
   news.ToJson()
}

//配合 第三方包的使用/json化結構體/if  else的初次使用 案例一
type TestStrutOne struct {
   NewsId int
   NewsTitle string
}

//配合 第三方包的使用/json化結構體/if  else的初次使用 案例一
//理解為其實就是 TestStrutOne結構體裡面的方法
//返回值為空的 就是沒有返回值唄
func (news TestStrutOne) ToJson()  {
   //這種寫法在php當中叫做解構 ffjson.Marshal()是引用了第三方的json轉換包 如何引入我們去部落格裡面講
   result,err := ffjson.Marshal(news)
   //nil就是相當於php當中的null none 空
   if err !=nil {
      fmt.Println(err.Error())
   } else {
     //沒有返回值就直接列印出來看看  列印出來的是肉眼看不懂的數字 
      fmt.Println(result)
   }
}

這程式碼是複製的上一篇部落格裡面的程式碼,重點是方法的返回值問題,這裡我們寫的ToJson()是沒有返回值的,所以如果你有東西返回就會報錯!如果你想從方法裡面直接列印那就不要設定返回值,直接列印即可!呼叫ToJson()的地方你也不要列印哦 因為沒東西返回 如果你列印也會報錯的 golang就這樣!

本作品採用《CC 協議》,轉載必須註明作者和本文連結

胡軍

相關文章