久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      go語言有哪些包

      go語言的包:1、fmt;2、io;3、bufio;4、sort;5、strconv;6、os;7、sync;8、flag;9、encoding/json;10、html/template;11、net/http;12、reflect等等。

      go語言有哪些包

      本教程操作環(huán)境:windows10系統(tǒng)、GO 1.11.2、Dell G3電腦。

      Go 語言的源碼復(fù)用建立在包(package)基礎(chǔ)之上。Go 語言的入口 main() 函數(shù)所在的包(package)叫 main,main 包想要引用別的代碼,必須同樣以包的方式進(jìn)行引用,本章內(nèi)容將詳細(xì)講解如何導(dǎo)出包的內(nèi)容及如何導(dǎo)入其他包。

      Go 語言的包與文件夾一一對應(yīng),所有與包相關(guān)的操作,必須依賴于工作目錄(GOPATH)。

      標(biāo)準(zhǔn)的Go語言代碼庫中包含了大量的包,并且在安裝 Go 的時候多數(shù)會自動安裝到系統(tǒng)中。我們可以在 $GOROOT/src/pkg 目錄中查看這些包。下面簡單介紹一些我們開發(fā)中常用的包。

      1) fmt

      fmt 包實(shí)現(xiàn)了格式化的標(biāo)準(zhǔn)輸入輸出,這與C語言中的 printf 和 scanf 類似。其中的 fmt.Printf() 和 fmt.Println() 是開發(fā)者使用最為頻繁的函數(shù)。

      格式化短語派生于C語言,一些短語(%- 序列)是這樣使用:

      • %v:默認(rèn)格式的值。當(dāng)打印結(jié)構(gòu)時,加號(%+v)會增加字段名;

      • %#v:Go樣式的值表達(dá);

      • %T:帶有類型的 Go 樣式的值表達(dá)。

      2) io

      這個包提供了原始的 I/O 操作界面。它主要的任務(wù)是對 os 包這樣的原始的 I/O 進(jìn)行封裝,增加一些其他相關(guān),使其具有抽象功能用在公共的接口上。

      3) bufio

      bufio 包通過對 io 包的封裝,提供了數(shù)據(jù)緩沖功能,能夠一定程度減少大塊數(shù)據(jù)讀寫帶來的開銷。

      在 bufio 各個組件內(nèi)部都維護(hù)了一個緩沖區(qū),數(shù)據(jù)讀寫操作都直接通過緩存區(qū)進(jìn)行。當(dāng)發(fā)起一次讀寫操作時,會首先嘗試從緩沖區(qū)獲取數(shù)據(jù),只有當(dāng)緩沖區(qū)沒有數(shù)據(jù)時,才會從數(shù)據(jù)源獲取數(shù)據(jù)更新緩沖。

      4) sort

      sort 包提供了用于對切片和用戶定義的集合進(jìn)行排序的功能。

      5) strconv

      strconv 包提供了將字符串轉(zhuǎn)換成基本數(shù)據(jù)類型,或者從基本數(shù)據(jù)類型轉(zhuǎn)換為字符串的功能。

      6) os

      os 包提供了不依賴平臺的操作系統(tǒng)函數(shù)接口,設(shè)計(jì)像 Unix 風(fēng)格,但錯誤處理是 go 風(fēng)格,當(dāng) os 包使用時,如果失敗后返回錯誤類型而不是錯誤數(shù)量。

      7) sync

      sync 包實(shí)現(xiàn)多線程中鎖機(jī)制以及其他同步互斥機(jī)制。

      8) flag

      flag 包提供命令行參數(shù)的規(guī)則定義和傳入?yún)?shù)解析的功能。絕大部分的命令行程序都需要用到這個包。

      9) encoding/json

      JSON 目前廣泛用做網(wǎng)絡(luò)程序中的通信格式。encoding/json 包提供了對 JSON 的基本支持,比如從一個對象序列化為 JSON 字符串,或者從 JSON 字符串反序列化出一個具體的對象等。

      10) html/template

      主要實(shí)現(xiàn)了 web 開發(fā)中生成 html 的 template 的一些函數(shù)。

      11) net/http

      net/http 包提供 HTTP 相關(guān)服務(wù),主要包括 http 請求、響應(yīng)和 URL 的解析,以及基本的 http 客戶端和擴(kuò)展的 http 服務(wù)。

      通過 net/http 包,只需要數(shù)行代碼,即可實(shí)現(xiàn)一個爬蟲或者一個 Web 服務(wù)器,這在傳統(tǒng)語言中是無法想象的。

      12) reflect

      reflect 包實(shí)現(xiàn)了運(yùn)行時反射,允許程序通過抽象類型操作對象。通常用于處理靜態(tài)類型 interface{} 的值,并且通過 Typeof 解析出其動態(tài)類型信息,通常會返回一個有接口類型 Type 的對象。

      13) os/exec

      os/exec 包提供了執(zhí)行自定義 linux 命令的相關(guān)實(shí)現(xiàn)。

      14) strings

      strings 包主要是處理字符串的一些函數(shù)集合,包括合并、查找、分割、比較、后綴檢查、索引、大小寫處理等等。

      strings 包與 bytes 包的函數(shù)接口功能基本一致。

      15) bytes

      bytes 包提供了對字節(jié)切片進(jìn)行讀寫操作的一系列函數(shù)。字節(jié)切片處理的函數(shù)比較多,分為基本處理函數(shù)、比較函數(shù)、后綴檢查函數(shù)、索引函數(shù)、分割函數(shù)、大小寫處理函數(shù)和子切片處理函數(shù)等。

      16) log

      log 包主要用于在程序中輸出日志。

      log 包中提供了三類日志輸出接口,Print、Fatal 和 Panic。

      • Print 是普通輸出;

      • Fatal 是在執(zhí)行完 Print 后,執(zhí)行 os.Exit(1);

      • Panic 是在執(zhí)行完 Print 后調(diào)用 panic() 方法。

      推薦學(xué)習(xí):Golang教程

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號