【GO】GO語言學習筆記一

來源:互聯網
上載者:User

標籤:env   highlight   學習筆記   type   ***   erro   運行   常量   package   

a、為何學習GO語言?

從個人角度來看,第一是被GO語言傳說中的那樣超高的開發效率和運行效率所吸引;第二是GO語言在語言層面支援並發,這在現在的編程業務中是很方便的;第三是由於前兩點,我覺得以後GO會火起來;最後一點,做技術嘛,跟著微軟或者Google總會是有肉吃的^_^!

b、第一個GO程式

根據國際慣例,學習一門語言,總會以一個Hello World開始,同樣,看第一個GO程式來感受一下GO的世界

package mainimport "fmt"func main(){    fmt.Println("Hello World!")}

package---包聲明,表示這段代碼屬於哪個包

import---匯入包,匯入fmt是因為需要使用fmt包中的Println函數//不能匯入代碼中沒有用到的包,編譯會報錯

/******************開始語言*********************/

一、順序編程

1、變數

a、聲明:

  引入關鍵字 var , 類型資訊在變數名之後

var a int
var v2 string  
var v3 [10]int  //數組  
/*多個變數一起聲明*/
var (
  v1 int
  v2 string
)

b、初始化

var v1 int = 10var v2 = 10 //可以自動推導類型v3 := 10 //v3不能是已經聲明過的變數  

c、賦值

var v4 intv4 = 10
/*多重賦值*/
a , b = 2 , 3
i , j = j , i

d、匿名變數

  Go語言支援多傳回值和匿名變數,由於函數可以多傳回值,在接收的時候可以選擇性的接收

func getName()(firstName , lastName , nickName){    return "zhangsan" , "lisi" , "wuhaha"}_ , _ , nickName := getName()

 

2、常量

a、字面常量-----程式中硬式編碼常量(無類型)

  -12  3.14159265358979325846//浮點型的常量  3.2 + 12i //複數型的常量  true //布爾型的常量  "foo" //字串型的常量

b、常量定義

關鍵字 const

const Pi float64 = 3.14159265358979323846const (  size int64 = 1024  eof = -1)const mask = 1 << 3 //編譯期運算的常量運算式

常量賦值是一個編譯期行為,所以右值不可以是任何需要運行期才能得出結果的運算式

如下錯誤栗子:

const errooooor = os.GetEnv("HOME")//os.GetEnv()要在運行期才能得出結果

c、預定義常量

true , false , iota

iota---可被編譯器修改的常量,每const出現一次,iota被重設為0,在下一個const出現之前,沒出現一次iota,iota代表的數字+1 

const (    c0 = iota //co == 0    c1 = iota //c1 == 1    c2 = iota //c2 == 2     )const (    c0 = 1 << iota //c0 == 1    c1 = 1 << iota //c1 == 2    c2 = 1 << iota //c2 == 4                 )

d、枚舉---定義一組常量

const (
  Sunday = iota
  Monday
  Tuesday
  Wednesday
  Thursday
  Friday
  Saturday
  numberOfDays // 這個常量沒有匯出
)

同Go語言的其他符號( symbol)一樣,以大寫字母開頭的常量在包外可見。以上例子中numberOfDays為包內私人,其他符號則可被其他包訪問。  

  

  

  

  

  

【GO】GO語言學習筆記一

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.