2021-11-10
創新互聯公司網絡公司擁有十年的成都網站開發建設經驗,1000+客戶的共同信賴。提供成都網站設計、成都做網站、網站開發、網站定制、外鏈、建網站、網站搭建、成都響應式網站建設、網頁設計師打造企業風格,提供周到的售前咨詢和貼心的售后服務
列表是一種非連續的存儲容器,有多個節點組成,節點通過一些變量記錄彼此之間的關系
單鏈表和雙鏈表就是列表的兩種方法。
原理:A、B、C三個人,B懂A的電話,C懂B的電話只是單方知道號碼,這樣就形成了一個單鏈表結構。
如果C把自己的號碼給B,B把自己的號碼給A,因為是雙方都知道對方的號碼,這樣就形成了一個雙鏈表結構
如果B換號碼了,他需要通知AC,把自己的號碼刪了,這個過程就是列表的刪除操作。
在Go語言中,列表使用 container/list 包來實現,內部的實現原理是雙鏈表,列表能夠高效地進行任意位置的元素插入和刪除操作。
列表初始化的兩種辦法
列表沒有給出具體的元素類型的限制,所以列表的元素可以是任意類型的,
例如給列表中放入了一個 interface{} 類型的值,取出值后,如果要將 interface{} 轉換為其他類型將會發生宕機。
雙鏈表支持從隊列前方或后方插入元素,分別對應的方法是 PushFront 和 PushBack。
列表插入函數的返回值會提供一個 *list.Element 結構,這個結構記錄著列表元素的值以及與其他節點之間的關系等信息,從列表中刪除元素時,需要用到這個結構進行快速刪除。
遍歷完也能看到最后的結果
學習地址:
數組是一個由 固定長度 的 特定類型元素 組成的序列,一個數組可以由零個或多個元素組成。 數組是值類型
數組的每個元素都可以通過索引下標來訪問,索引下標的范圍是從0開始到數組長度減1的位置,內置函數 len() 可以返回數組中元素的個數。
2.類型的打印,結果的第二種打印方式
3.對元素的修改或者賦值
4.判斷數組是否相等:長度、類型
4.數組的地址:連續存儲的空間
5.數組的賦值、地址、取值
6.數組的默認值
7.數組的初始化
8.數組的逆置
9.求數組的最大值、最小值、平均值
10.對數組字符串進行連接
11.冒泡排序法的實現
12.數組做函數的參數
13.二維數組:賦值和地址
14.二維數組:打印和輸出
15. 指針數組,每一個元素都是地址
17.數組的內存分配
本文介紹一些Go語言的基礎語法。
先來看一個簡單的go語言代碼:
go語言的注釋方法:
代碼執行結果:
下面來進一步介紹go的基礎語法。
go語言中格式化輸出可以使用 fmt 和 log 這兩個標準庫,
常用方法:
示例代碼:
執行結果:
更多格式化方法可以訪問中的fmt包。
log包實現了簡單的日志服務,也提供了一些格式化輸出的方法。
執行結果:
下面來介紹一下go的數據類型
下表列出了go語言的數據類型:
int、float、bool、string、數組和struct屬于值類型,這些類型的變量直接指向存在內存中的值;slice、map、chan、pointer等是引用類型,存儲的是一個地址,這個地址存儲最終的值。
常量是在程序編譯時就確定下來的值,程序運行時無法改變。
執行結果:
執行結果:
Go 語言的運算符主要包括算術運算符、關系運算符、邏輯運算符、位運算符、賦值運算符以及指針相關運算符。
算術運算符:
關系運算符:
邏輯運算符:
位運算符:
賦值運算符:
指針相關運算符:
下面介紹一下go語言中的if語句和switch語句。另外還有一種控制語句叫select語句,通常與通道聯用,這里不做介紹。
if語法格式如下:
if ... else :
else if:
示例代碼:
語法格式:
另外,添加 fallthrough 會強制執行后面的 case 語句,不管下一條case語句是否為true。
示例代碼:
執行結果:
下面介紹幾種循環語句:
執行結果:
執行結果:
也可以通過標記退出循環:
--THE END--
1、goroutine:在go語言中,每一個并發的執行單元叫做goroutine,如果一個程序中包含多個goroutine,對兩個函數的調用則可能發生在同一時刻
2、main goroutine:當一個程序啟動時,其主函數即在一個單獨的goroutine中運行,我們叫他為main gorountine
3、go goroutine:新的goroutine會用go語句來創建,go+函數名,go語句會使其語句中的函數在一新創建的goroutine中運行,而go語句本身會迅速地完成
4、goroutine的退出:主函數返回時,所有的goroutine都會被直接打斷,程序退出,除了從主函數退出或者終止程序之外,沒有其他方法能夠讓一個goroutine來打斷另一個的執行,但是可以通過另一種方式來實現這個目的,通過goroutine之間的通信來讓一個goroutine請求其他的goroutine,并讓請求的goroutine自行結束執行
文章題目:go語言實現分布式排序 golang分布式事務解決方案
當前路徑:http://m.newbst.com/article34/dogpcse.html
成都網站建設公司_創新互聯,為您提供定制網站、手機網站建設、外貿建站、域名注冊、網站營銷、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯