亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

golang指數(shù)運(yùn)算操作

 更新時(shí)間:2020年12月17日 08:35:05   作者:思維的深度  
這篇文章主要介紹了golang指數(shù)運(yùn)算操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

我就廢話不多說(shuō)了,大家還是直接看代碼吧~

func main() {
 fmt.Println(exponent (5,3))
}
//a的n次方
//超出uint64的部分會(huì)丟失
func exponent (a,n uint64) uint64 {
 result := uint64(1)
 for i := n ; i > 0; i >>= 1 {
 if i&1 != 0 {
 result *= a
 }
 a *= a
 }
 return result
}

補(bǔ)充:Golang 位運(yùn)算之 &^

看Golang源代碼,突然看到一個(gè) a &^ b的位操作,有點(diǎn)懵,在通過(guò)不斷的寫(xiě)測(cè)試驗(yàn)證,終于弄清楚了是怎么回事,在這里記錄一下,避免忘記。

在弄清楚a &^ b是怎么回事之前,我們先看一個(gè)我們熟悉的 a += b:

a += b ==> a = a + b

其實(shí)&^也是一樣:

a &^ b ==> a ^ (a & b)

只是把 = 換成了 ^ 。

還有更復(fù)雜一點(diǎn)的,但萬(wàn)變不離其宗,如 a &^= b:

a &^= b,分兩步分解:

==> a = a &^ b

==> a = a ^ (a & b)

在Golang里面對(duì)于這種表達(dá)式都可以套用+=這種我們熟悉的,復(fù)雜一點(diǎn)的就按步驟分解。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • go通過(guò)benchmark對(duì)代碼進(jìn)行性能測(cè)試詳解

    go通過(guò)benchmark對(duì)代碼進(jìn)行性能測(cè)試詳解

    在開(kāi)發(fā)中我們要想編寫(xiě)高性能的代碼,或者優(yōu)化代碼的性能時(shí),你首先得知道當(dāng)前代碼的性能,在go中可以使用testing包的benchmark來(lái)做基準(zhǔn)測(cè)試 ,文中有詳細(xì)的代碼示例,感興趣的小伙伴可以參考一下
    2023-04-04
  • golang 輸出重定向:fmt Log,子進(jìn)程Log,第三方庫(kù)logrus的詳解

    golang 輸出重定向:fmt Log,子進(jìn)程Log,第三方庫(kù)logrus的詳解

    這篇文章主要介紹了golang 輸出重定向:fmt Log,子進(jìn)程Log,第三方庫(kù)logrus的詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • golang中json和struct的使用說(shuō)明

    golang中json和struct的使用說(shuō)明

    這篇文章主要介紹了golang中json和struct的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-05-05
  • Golang?Mutex互斥鎖源碼分析

    Golang?Mutex互斥鎖源碼分析

    本篇文章,我們將一起來(lái)探究下Golang?Mutex底層是如何實(shí)現(xiàn)的,知其然,更要知其所以然。文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2022-10-10
  • go語(yǔ)言實(shí)現(xiàn)Elasticsearches批量修改查詢及發(fā)送MQ操作示例

    go語(yǔ)言實(shí)現(xiàn)Elasticsearches批量修改查詢及發(fā)送MQ操作示例

    這篇文章主要為大家介紹了go語(yǔ)言實(shí)現(xiàn)Elasticsearches批量修改查詢及發(fā)送MQ操作示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-04-04
  • 詳解Go語(yǔ)言中Validator庫(kù)的使用方法和用途

    詳解Go語(yǔ)言中Validator庫(kù)的使用方法和用途

    github.com/go-playground/validator 是一個(gè) Go 語(yǔ)言的庫(kù),用于對(duì)結(jié)構(gòu)體字段進(jìn)行驗(yàn)證,它提供了一種簡(jiǎn)單而靈活的方式來(lái)定義驗(yàn)證規(guī)則,在這篇文章中,我們將從一個(gè)簡(jiǎn)單的問(wèn)題出發(fā),帶你了解 Validator 庫(kù)的用途,也會(huì)介紹Validator 的基本使用
    2023-09-09
  • 深入了解Golang中占位符的使用

    深入了解Golang中占位符的使用

    在寫(xiě)?golang?的時(shí)候,也是有對(duì)應(yīng)的格式控制符,也叫做占位符,寫(xiě)這個(gè)占位符,需要有對(duì)應(yīng)的數(shù)據(jù)與之對(duì)應(yīng),不能瞎搞。本文就來(lái)和大家聊聊Golang中占位符的使用,希望對(duì)大家有所幫助
    2023-03-03
  • golang實(shí)現(xiàn)簡(jiǎn)易的分布式系統(tǒng)方法

    golang實(shí)現(xiàn)簡(jiǎn)易的分布式系統(tǒng)方法

    這篇文章主要介紹了golang實(shí)現(xiàn)簡(jiǎn)易的分布式系統(tǒng)方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • Go語(yǔ)言類型轉(zhuǎn)換及問(wèn)題探討

    Go語(yǔ)言類型轉(zhuǎn)換及問(wèn)題探討

    本文探討了Go語(yǔ)言中的類型轉(zhuǎn)換機(jī)制,特別是在使用atomic.Pointer和unsafe時(shí)可能引發(fā)的問(wèn)題,通過(guò)深入分析Go語(yǔ)言的類型轉(zhuǎn)換規(guī)則,如數(shù)值類型間轉(zhuǎn)換、字符串與byte/rune切片轉(zhuǎn)換、slice與數(shù)組轉(zhuǎn)換,以及底層類型相同時(shí)的轉(zhuǎn)換,文章最后給出了一些在Go中使用類型轉(zhuǎn)換的建議
    2024-10-10
  • golang判斷key是否在map中的代碼

    golang判斷key是否在map中的代碼

    這篇文章主要介紹了golang判斷key是否在map中的代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04

最新評(píng)論