成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Go 語言基礎(chǔ)

浠ラ箍 / 1531人閱讀

摘要:語句語句用于基于不同條件執(zhí)行不同動作。引用傳遞引用傳遞是指在調(diào)用函數(shù)時將實際參數(shù)的地址傳遞到函數(shù)中,那么在函數(shù)中對參數(shù)所進行的修改,將影響到實際參數(shù)。默認情況下,語言使用的是值傳遞,即在調(diào)用過程中不會影響到實際參數(shù)。

Go 語言內(nèi)置的運算符有:
1.算術(shù)運算符:+ - * / % ++ --
2.關(guān)系運算符:== != > < >= <=
3.邏輯運算符:&& || !
4.位運算符:& | ^ << >> 將其先轉(zhuǎn)換為二進制數(shù),在根據(jù)如下表規(guī)則

p    q    p & q    p | q    p ^ q
0    0      0        0        0
0    1      0        1        1
1    1      1        1        0
1    0      0        1        1

如假定 A = 60; B = 13; 其二進制數(shù)轉(zhuǎn)換為:

A = 0011 1100
B = 0000 1101
-----------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
A<<2 =240 二進制為 1111 0000 左移n位就是乘以2的n次方。
A>>2 =15  二進制為 0000 1111 右移n位就是除以2的n次方。 

5.賦值運算符

    1.=     2.+=     3.-=     4.*=     5./=     6.%=    
    7.<<=    左移后賦值    C <<= 2 等于 C = C << 2
    8.>>=    右移后賦值    C >>= 2 等于 C = C >> 2
    9.&=    按位與后賦值    C &= 2 等于 C = C & 2
    10.^=    按位異或后賦值    C ^= 2 等于 C = C ^ 2
    11.|=    按位或后賦值    C |= 2 等于 C = C | 2

6.其他運算符

&    返回變量存儲地址    實例&a:將給出變量的實際地址。
*    指針變量。        實例*a:是一個指針變量

7.運算符優(yōu)先級
有些運算符擁有較高的優(yōu)先級,二元運算符的運算方向均是從左至右。下表列出了所有運算符以及它們的優(yōu)先級,由上至下代表優(yōu)先級由高到低:

優(yōu)先級    運算符
  7        ^ !
  6    * / % << >> & &^
  5      + - | ^
  4    == != < <= >= >
  3         <-
  2         &&
  1         ||

當然,你可以通過使用括號來臨時提升某個表達式的整體運算優(yōu)先級。

Go 語言條件語句

if
if...else
if 嵌套語句 你可以在 if 或 else if 語句中嵌入一個或多個 if 或 else if 語句。
switch 語句 switch 語句用于基于不同條件執(zhí)行不同動作。
select 語句 select 語句類似于 switch 語句,但是select會隨機執(zhí)行一個可運行的case。如果沒有case可運行,它將阻塞,直到有case可運行。

Go 語言循環(huán)語句

for 循環(huán) 重復執(zhí)行語句塊
循環(huán)嵌套 在 for 循環(huán)中嵌套一個或多個 for 循環(huán)

循環(huán)控制語句
break 語句 經(jīng)常用于中斷當前 for 循環(huán)或跳出 switch 語句
continue 語句 跳過當前循環(huán)的剩余語句,然后繼續(xù)進行下一輪循環(huán)。
goto 語句 將控制轉(zhuǎn)移到被標記的語句。

循環(huán)判斷的例子輸出 1-100 素數(shù):

package main
import "fmt"

func main() {
    var a, b int
    for a = 2; a <= 100; a++ {
        for b = 2; b <= (a / b); b++ {
            if a%b == 0 {
                break
            }
        }
        if b > (a / b) {
            fmt.Printf("%d	是素數(shù)
", a)
        }
    }
}
Go 語言函數(shù)

Go 語言函數(shù)定義格式如下:

func function_name( [parameter list 參賽列表] ) [return_types 返回類型] {
   函數(shù)體
}

函數(shù)參數(shù)
函數(shù)如果使用參數(shù),該變量可稱為函數(shù)的形參。
形參就像定義在函數(shù)體內(nèi)的局部變量。
調(diào)用函數(shù),可以通過兩種方式來傳遞參數(shù):

傳遞類型 描述
值傳遞:值傳遞是指在調(diào)用函數(shù)時將實際參數(shù)復制一份傳遞到函數(shù)中,這樣在函數(shù)中如果對參數(shù)進行修改,將不會影響到實際參數(shù)。
引用傳遞 :引用傳遞是指在調(diào)用函數(shù)時將實際參數(shù)的地址傳遞到函數(shù)中,那么在函數(shù)中對參數(shù)所進行的修改,將影響到實際參數(shù)。
默認情況下,Go 語言使用的是值傳遞,即在調(diào)用過程中不會影響到實際參數(shù)。

函數(shù)用法
函數(shù)作為值 函數(shù)定義后可作為值來使用
閉包 閉包是匿名函數(shù),可在動態(tài)編程中使用
方法 方法就是一個包含了接受者的函數(shù)

Go 語言變量作用域

Go 語言中變量可以在三個地方聲明:

函數(shù)內(nèi)定義的變量稱為局部變量
函數(shù)外定義的變量稱為全局變量
函數(shù)定義中的變量稱為形式參數(shù)

package main

import "fmt"

/* 聲明全局變量 */
var a int = 20

func main() {
    /* main 函數(shù)中聲明局部變量 */
    var a int = 10
    var b int = 20
    var c int = 0

    fmt.Printf("main()函數(shù)中 a = %d
", a)
    c = sum(a, b)
    fmt.Printf("main()函數(shù)中 a = %d
", a)
    fmt.Printf("main()函數(shù)中 c = %d
", c)
}

/* 函數(shù)定義-兩數(shù)相加 */
func sum(a, b int) int {
    a = a + 1
    fmt.Printf("sum() 函數(shù)中 a = %d
", a)
    fmt.Printf("sum() 函數(shù)中 b = %d
", b)
    return a + b
}


/*main()函數(shù)中 a = 10
sum() 函數(shù)中 a = 11
sum() 函數(shù)中 b = 20
main()函數(shù)中 a = 10
main()函數(shù)中 c = 31*/


Go 語言數(shù)組

初始化數(shù)組
以下演示了數(shù)組初始化:

var balance = [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
初始化數(shù)組中 {} 中的元素個數(shù)不能大于 [] 中的數(shù)字。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/24325.html

相關(guān)文章

  • 今天是Go語言12周年生日,裝一個開始Go語言之旅吧——

    摘要:語言的生日年前的今天,語言以開源方式向全球發(fā)布簡介語言又稱,是谷歌開發(fā)的一種靜態(tài)強類型編譯型并發(fā)型,并具有垃圾回收功能的編程語言。語言有時被描述為類似語言,或者是世紀的語言。語言有一個清晰易懂的輕量級類型系統(tǒng),在類型之間也沒有層級之說。 Go語言的生日 12年前的今天→ 2009.11.10...

    willin 評論0 收藏0
  • 再見,Python!你好,Go語言

    摘要:語言誕生于谷歌,由計算機領(lǐng)域的三位宗師級大牛和寫成。作者華為云技術(shù)宅基地鏈接谷歌前員工認為,比起大家熟悉的,語言其實有很多優(yōu)良特性,很多時候都可以代替,他已經(jīng)在很多任務(wù)中使用語言替代了。 Go 語言誕生于谷歌,由計算機領(lǐng)域的三位宗師級大牛 Rob Pike、Ken Thompson 和 Robert Griesemer 寫成。由于出身名門,Go 在誕生之初就吸引了大批開發(fā)者的關(guān)注。誕生...

    zhaot 評論0 收藏0
  • Go語言的前景分析

    摘要:覺得好的話,順手分享到朋友圈吧,感謝支持。抓住時代的趨勢在上篇文章中,也就是那個跨維度的打擊,是可以直接秒殺的中,提到這個時代的問題,這次針對語言的前景分析,其實我也想講一下時代的問題。目前語言就處于這樣一個不錯的時代中。 本文為原創(chuàng)文章,轉(zhuǎn)載注明出處,asdfasdfasdf 歡迎掃碼關(guān)注公眾號flysnow_org或者網(wǎng)站http://www.flysnow.org/,第一時間看后...

    denson 評論0 收藏0
  • Go語言的前景分析

    摘要:覺得好的話,順手分享到朋友圈吧,感謝支持。抓住時代的趨勢在上篇文章中,也就是那個跨維度的打擊,是可以直接秒殺的中,提到這個時代的問題,這次針對語言的前景分析,其實我也想講一下時代的問題。目前語言就處于這樣一個不錯的時代中。 本文為原創(chuàng)文章,轉(zhuǎn)載注明出處,asdfasdfasdf 歡迎掃碼關(guān)注公眾號flysnow_org或者網(wǎng)站http://www.flysnow.org/,第一時間看后...

    stefanieliang 評論0 收藏0

發(fā)表評論

0條評論

浠ラ箍

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<