本篇內(nèi)容介紹了“如何了解Go語言基礎(chǔ)之運(yùn)算符和流程控制”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)建站專注于徐聞企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城開發(fā)。徐聞網(wǎng)站建設(shè)公司,為徐聞等地區(qū)提供建站服務(wù)。全流程按需求定制設(shè)計,專業(yè)設(shè)計,全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)建站專業(yè)和態(tài)度為您提供的服務(wù)
運(yùn)算符這個名字聽著玄乎,其實(shí)我們平常見的很多了,就像=
,+
,/
之類的。
運(yùn)算符主要分為
算數(shù)運(yùn)算符
關(guān)系運(yùn)算符
邏輯運(yùn)算符
位運(yùn)算符
賦值運(yùn)算符
下面就來簡單了解以下叭。
算數(shù)運(yùn)算符顧名思義,主要用在算數(shù)中,加減乘除了啥的
簡單了解以下叭。
運(yùn)算符 | 描述 |
---|---|
+ | 相加 |
- | 相減 |
* | 相乘 |
/ | 相除 |
% | 求余 |
++ | 自加 |
-- | 自減 |
運(yùn)算符 | 描述 |
---|---|
== | 檢查兩個值是否相等,如果相等返回 True 否則返回 False |
!= | 檢查兩個值是否不相等,如果不相等返回 True 否則返回 False |
> | 檢查左邊值是否大于右邊值,如果是返回 True 否則返回 False |
>= | 檢查左邊值是否大于等于右邊值,如果是返回 True 否則返回 False |
< | 檢查左邊值是否小于右邊值,如果是返回 True 否則返回 False |
<= | 檢查左邊值是否小于等于右邊值,如果是返回 True 否則返回 False |
運(yùn)算符 | 描述 |
---|---|
&& | 邏輯 and 運(yùn)算符。 如果兩邊的操作數(shù)都是 True,則為 True,否則為 False |
|| | 邏輯 or 運(yùn)算符。 如果兩邊的操作數(shù)有一個 True,則為 True,否則為 False |
! | 邏輯 NOT 運(yùn)算符。 如果條件為 True,則為 False,否則為 True |
注:邏輯運(yùn)算符是很重要的,開發(fā)中經(jīng)常用到。
位運(yùn)算符有些底層,特殊情況會用到
運(yùn)算符 | 描述 |
---|---|
& | 參與運(yùn)算的兩數(shù)各對應(yīng)的二進(jìn)位相與。 (兩位均為1才為1) |
| | 參與運(yùn)算的兩數(shù)各對應(yīng)的二進(jìn)位相或。 (兩位有一個為1就為1) |
^ | 參與運(yùn)算的兩數(shù)各對應(yīng)的二進(jìn)位相異或,當(dāng)兩對應(yīng)的二進(jìn)位相異時,結(jié)果為1。 (兩位不一樣則為1) |
<< | 左移n位就是乘以2的n次方。 “a<<b”是把a(bǔ)的各二進(jìn)位全部左移b位,高位丟棄,低位補(bǔ)0。 |
>> | 右移n位就是除以2的n次方。 “a>>b”是把a(bǔ)的各二進(jìn)位全部右移b位。 |
賦值運(yùn)算符在開發(fā)中用的也是比較多的。
運(yùn)算符 | 描述 |
---|---|
= | 簡單的賦值運(yùn)算符,將一個表達(dá)式的值賦給一個左值 |
+= | 相加后再賦值 |
-= | 相減后再賦值 |
*= | 相乘后再賦值 |
/= | 相除后再賦值 |
%= | 求余后再賦值 |
<<= | 左移后賦值 |
>>= | 右移后賦值 |
&= | 按位與后賦值 |
|= | 按位或后賦值 |
^= | 按位異或后賦值 |
在Go中,流程控制有以下幾種。
if
if
switch case
for
標(biāo)準(zhǔn)for
forrange
goto(慎用)
語法
//方式一,一個ifif 條件{ //執(zhí)行語句}//方式二,if條件不成功執(zhí)行elseif 條件{ //if成功語句}else{ //if不成功語句}//方式三,帶有else if得if 條件1{ //if成功語句}else if 條件2{ //if不成功,繼續(xù)else if條件}else{ //上面都不成功,執(zhí)行else}
例子
package main
import "fmt"
func main() {
var gender = "男"
if gender == "男" {
fmt.Println("男")
} else if gender == "女" {
fmt.Println("女")
} else {
fmt.Println("啥都不是???")
}
}
switch case
和if
本質(zhì)是一個東西,但是在某些場景,switch
是比if
更加簡潔的。
代碼
package main
import "fmt"
func main() {
var week = 3
switch week {
case 1:
fmt.Println("周一")
case 2:
fmt.Println("周二")
case 3:
fmt.Println("周三")
case 4:
fmt.Println("周四")
case 5:
fmt.Println("周五")
case 6:
fmt.Println("周六")
case 7:
fmt.Println("周日")
default://如果上面都沒執(zhí)行,會執(zhí)行default
fmt.Println("星期八????")
}
}
注:在Go中,switch
是沒有case穿透的。
Go的switch
可以case
多個值。
package main
import "fmt"
func main() {
var week = 3
switch week {
case 1, 2, 3, 4, 5:
fmt.Println("上班")
case 6:
fmt.Println("周六睡懶覺")
case 7:
fmt.Println("周日去旅游")
default:
fmt.Println("飛天了???")
}
}
語法
for 初始條件;判斷條件;結(jié)束條件{ 語句}
代碼
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i)
}
}
謹(jǐn)慎執(zhí)行!!!
package main
import "fmt"
func main() {
for{
fmt.Println("666")
}
}
for ragne
可以很方便循環(huán)數(shù)組,切片,字符串,map,channel等。
遍歷數(shù)組示例
package main
import "fmt"
func main() {
var student_list = [...]string{"張三", "李四", "王五"}
for index, v := range student_list {
//index為下標(biāo),v是每一個的值
fmt.Println(index, v)
}
}
注:
如果數(shù)組,切片,字符串 index是下標(biāo),v是值如果是map index是鍵,v是對(值)如果是通道 只有一個值,就是通道內(nèi)的值
補(bǔ)充:
在Go中,只有for循環(huán),沒有while。
for循環(huán)就兩種方式。
goto
可以通過標(biāo)簽在代碼間無條件跳轉(zhuǎn),這就造成了一個局面,如果使用gote
過多,會造成邏輯混亂,跳來跳去。
所以,在開發(fā)中,要慎用,不到萬不得已,不要使用。
示例
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
for j := 0; j < 10; j++ {
if j == 2 {
// 直接跳轉(zhuǎn)到下面的 breakTag 標(biāo)簽
goto breakTag
}
fmt.Printf("%v-%v\n", i, j)
}
}
//要跳轉(zhuǎn)的標(biāo)簽
breakTag:
fmt.Println("結(jié)束for循環(huán)")
}
“如何了解Go語言基礎(chǔ)之運(yùn)算符和流程控制”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
網(wǎng)頁標(biāo)題:如何了解Go語言基礎(chǔ)之運(yùn)算符和流程控制
本文URL:http://vcdvsql.cn/article20/podjco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、面包屑導(dǎo)航、移動網(wǎng)站建設(shè)、電子商務(wù)、云服務(wù)器、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)