日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GO语言变量和常量、语言控制语句流程

發布時間:2025/5/22 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GO语言变量和常量、语言控制语句流程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.算術運算符 (比較簡單,可以跳過)

+? 添加兩個操作數 A+B

- 從第一個操作數中減去第二個操作數 A-B

/ 將分子除分母

% 模數運算符,整數除法的余數 B%A

++ 增加(遞增)運算符,將整數值加一 A++

--? 相減(遞減)運算符,將整數值減一 A--

代碼都懶得上了~~~~~~~

2.關系運算符(比較簡單,可以跳過)

== 檢查兩個操作數的值是否相等,如果相等,則條件為真。(A==B)結果為假

!= 檢查兩個操作數的值是否相等,如果值不相等,則條件為真。(A!=B)結果為真

> 檢查左操作數的值是否大于右操作數的值,如果是,則條件為真 (A>b) 結果為假

<?檢查左操作數的值是否小于右操作數的值,如果是,則條件為真 (A<b) 結果為真

>= 檢查左操作數的值是否大于右或等于操作數的值,如果是,則條件為真 (A>=b) 結果為假

?<= 檢查左操作數的值是否小于或等于右操作數的值,如果是,則條件為真 (A<=b) 結果為真

3.邏輯運算符(比較簡單,可以跳過)

&& 邏輯與運算符。如果兩個操作數都不為零,則條件為真。(A&&B)結果為真

|| 邏輯或運算符。如果兩個操作數中任何一個非零,則條件為真。(A || B)結果為真

!?邏輯非運算符。用于反轉其操作數的邏輯狀態。如果條件為真,則邏輯非運算符將為假。!(A && B)結果為真

4. 按拉運算符

& 按位與:都為1則結果為1? ==對應位數上都為1,結果為1

| 按位或:有一個為1 結果為1 ==對應位數上有一個為1,結果為1

^ 按位異或:對應位不同數值時結果為1?==對應位數上數值不同,結果為1

<< 左移:把數整體向左移動 ==整體向左移動1位,相當與數字中數值*2,空出以0表達

>> 右移:把數整體向右移動?==整體向右移動1位,相當與數字中數值/2,空出以0表達

byteTest.go

//程序所屬包 *必須 package main//導入依賴包import ("fmt" )//main函數 func main(){a := byte(0)b := byte(1)fmt.Println(a)fmt.Println(b)fmt.Println(a&b) //對應位數上都為1,結果為1 因為a為0,所以結果即為0fmt.Println(a|b) //對應位數上有一個為1,結果為1 因為b為a,所以結果即為1fmt.Println(a^b) //對應位數上數值不同,結果為1 因為ab值不同,所以結果即為1fmt.Println(a^a) //對應位數上數值不同,結果為1 因為兩個值相同,所以結果即為0fmt.Println(b<<1) //1*2fmt.Println(b<<3) //1*2*2*2fmt.Println(b>>1) //1/2 }

5.賦值運算符

= 表達式的值賦給一個左值? ? C=A+B 將A+B表達式結果賦值給C

+= 相加后再賦值? ?C+=A 等于 C=C+A

-= 相減后再賦值?C-=A 等于 C=C-A

*=?相乘后再賦值?C*=A 等于 C=C*A

/= 相除后再賦值?C/=A 等于 C=C/A

%= 求余后再賦值?C%=A 等于 C=C%A

<<= 左移后再賦值?C<<=A 等于 C=C<<A

>>= 右移后再賦值?C>>=A 等于 C=C>>A

&= 按位與后再賦值?C&=A 等于 C=C&A

^= 按位異后再賦值?C^=A 等于 C=C^A

|= 按位或后再賦值?C|=A 等于 C=C|A

?

6.控制語句

條件語句if ,if else ,嵌套if,else if

選擇語句switch,select

switch 語句用于基于不同條件執行不同動作,每一個 case 分支都是唯一的,從上直下逐一測試,直到匹配為止。。

switch 語句執行的過程從上至下,直到找到匹配項,匹配項后面也不需要再加break

package mainimport "fmt"func main() {var x interface{} //設置A什么類型都可以switch i := x.(type) {case nil:???? fmt.Printf(" x 的類型 :%T",i) case int:???? fmt.Printf("x 是 int 型") case float64:fmt.Printf("x 是 float64 型") case func(int) float64:fmt.Printf("x 是 func(int) 型") case bool, string:fmt.Printf("x 是 bool 或 string 型" ) default:fmt.Printf("未知型") } }

循環語句 for 目前只有一個for

//程序所屬包 *必須 package main//導入依賴包import ("fmt""time" )//main函數 func main(){//無限循環//for{// fmt.Println("333");// time.Sleep(1*time.Second)//}for i:=1; i<10; i++ {if i<3{fmt.Println("333");time.Sleep(1*time.Second)}}//foreach效果a :=[]string{"a", "b", "c"}for key,value:= range a{fmt.Println(key)fmt.Println(value)}//不用key,_垃圾桶for _,value:= range a{fmt.Println(value)} }

控制語句中使用到的關鍵字goto,break,continue

goto 直接跳過到指定代碼塊

break 是直接跳出當前循環體,如果是嵌套循環是只能跳出當前的

continue 跳出當次循環

//程序所屬包 *必須package main//導入依賴包import ("fmt""time" )//main函數 func main(){goto One //直接運行1234,跳出下面的-----fmt.Println("--------") One :fmt.Println("1234")for i:=1; i<6; i++ {fmt.Println(i)for j:=1; j<3; j++ {fmt.Println(j)time.Sleep(1 * time.Second)break //只能跳出當前J的循環體}}for i:=1; i<6; i++ {if i<3 {fmt.Println("當前")fmt.Println(i)continue //當次循環后面不再運行}fmt.Println(i)} }

結果:

1234
1
1
2
1
3
1
4
1
5
1
當前
1
當前
2
3
4
5

總結

以上是生活随笔為你收集整理的GO语言变量和常量、语言控制语句流程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。