Go 語言中的 for 循環(huán)不會按照順序輸出,因?yàn)樗皇且粋€(gè)有序的過程。for 循環(huán)采用的是“基于條件的循環(huán)”,而不是“基于步長的循環(huán)”。這意味著當(dāng)條件滿足時(shí),for 循環(huán)會執(zhí)行一次,而不是每次都按照指定的步長執(zhí)行一次。
專注于為中小企業(yè)提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)鼓樓免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
go語言中的for循環(huán),只有for關(guān)鍵字,去除了像其他語言中的while和do while.
注意:for表達(dá)式不用加括號
循環(huán)輸出1到10
運(yùn)行結(jié)果
初始條件,可以寫到外面
運(yùn)行結(jié)果
初始條件和結(jié)束條件都可以省略
運(yùn)行結(jié)果
這種情況類似其他語言中的while循環(huán)
永真循環(huán)
運(yùn)行結(jié)果
for循環(huán)可以通過break、goto、return、panic語句強(qiáng)制退出循環(huán)。
1,go的變量聲明順序是:”先寫變量名,再寫類型名“,此與C/C++的語法孰優(yōu)孰劣,可見下文解釋:
2,go是通過package來組織的(與python類似),只有package名為main的包可以包含main函數(shù),一個(gè)可執(zhí)行程序有且僅有一個(gè)main包,通過import關(guān)鍵字來導(dǎo)入其他非main包。
3,可見性規(guī)則。go語言中,使用大小寫來決定該常量、變量、類型、接口、結(jié)構(gòu)或函數(shù)是否可以被外部包含調(diào)用。根據(jù)約定,函數(shù)名首字母小寫即為private,函數(shù)名首字母大寫即為public。
4,go內(nèi)置關(guān)鍵字(25個(gè)均為小寫)。
5,函數(shù)不用先聲明,即可使用。
6,在函數(shù)內(nèi)部可以通過 := 隱士定義變量。(函數(shù)外必須顯示使用var定義變量)
7,go程序使用UTF-8編碼的純Unicode文本編寫。
8,使用big.Int的陷阱:
9,從技術(shù)層面講,go語言的語句是以分號分隔的,但這些是由編譯器自動(dòng)添加的,不用手動(dòng)輸入,除非需要在同一行中寫入多個(gè)語句。沒有分號及只需少量的逗號和圓括號,使得go語言的程序更容易閱讀。
10,go語言只有一個(gè)循環(huán)結(jié)構(gòu)——for循環(huán)。
11,go里的自增運(yùn)算符只有——“后++”
12,go語言中的slice用法類似python中數(shù)組,關(guān)于slice的詳細(xì)用法可見:
13,函數(shù)也是一個(gè)值,使用匿名函數(shù)返回一個(gè)值。
14,函數(shù)閉包的使用,閉包是一個(gè)匿名函數(shù)值,會引用到其外部的變量。
go func是golang的協(xié)程,就像多線程,異步執(zhí)行,所以,代碼段1執(zhí)行完3遍后,可能3次協(xié)成剛執(zhí)行完。在代碼段1中如果sleep一下應(yīng)該就能給協(xié)程時(shí)間執(zhí)行了。