Maison >développement back-end >Golang >Un article pour vous aider à comprendre les bases des opérateurs du langage Go et du contrôle des processus
Le nom d'opérateur semble mystérieux, mais en fait on le voit beaucoup plus souvent, comme =
=
,+
,/
,+
,/
et autres. Les opérateurs sont principalement divisés en opérateurs relationnels
opérateurs logiques
opérateurs de bits
Affectation opérateur
Comprenons brièvement ce qui suit.
Opérateurs arithmétiques
Veuillez comprendre brièvement ci-dessous.
opérateur | description Ajouter |
---|---|
- | Soustraire |
* | Multiplier |
/ | Divide |
% | Trouver le reste |
++ | Ajouté par vous-même |
- - | Auto-décroissante |
Opérateur | Description |
---|---|
= = | Vérifiez si deux valeurs sont égales, si Renvoie True si égal, sinon renvoie False |
!= | Vérifiez si les deux valeurs ne sont pas égales, sinon renvoie True sinon renvoie False |
> | Vérifiez si la valeur de gauche est supérieure à la valeur de droite, si c'est le cas, retournez True sinon retournez False |
>= | Vérifiez si la valeur de gauche est supérieure ou égale à la valeur de droite, si c'est le cas, renvoyez True, sinon renvoyez False |
600e25ad8f4bb8ec959a69d876aaaba6> | Le déplacement de n bits vers la droite est divisé par 2 élevé à la nième puissance. "a>>b" décale tous les bits binaires de a vers la droite de b bits. |
L'opérateur d'affectation est également couramment utilisé dans le développement.
Opérateur | Description |
---|---|
= | Simple L'opérateur d'affectation attribue la valeur d'une expression à une lvalue |
+= | additionner puis attribuer la valeur |
-= | Soustraire puis attribuer la valeur |
*= | multiplié puis attribué |
/= | Divisez puis attribuez la valeur |
%= | Trouvez le reste et attribuez la valeur |
76e26acefb190cac08a2bda5baf81375>= | Déplacez-vous vers la droite et attribuez une valeur |
& = | Affectation après bitwise AND |
|= | OU au niveau du bit puis affectation |
^= | XOR au niveau du bit puis affectation |
Dans Go, il existe les types de contrôle de processus suivants.
if
if
étui switch
pour
standard pour
pourla gamme
goto (utilisation avec prudence)
syntax
//方式一,一个if if 条件{ //执行语句 } //方式二,if条件不成功执行else if 条件{ //if成功语句 }else{ //if不成功语句 } //方式三,带有else if得 if 条件1{ //if成功语句 }else if 条件2{ //if不成功,继续else if条件 }else{ //上面都不成功,执行else }
xamples 代码 注:在Go中, Go的 语法 代码 谨慎执行!!! 遍历数组示例 注: 补充: 在Go中,只有for循环,没有while。 for循环就两种方式。 所以,在开发中,要慎用,不到万不得已,不要使用。 示例package main
import "fmt"
func main() {
var gender = "男"
if gender == "男" {
fmt.Println("男")
} else if gender == "女" {
fmt.Println("女")
} else {
fmt.Println("啥都不是???")
}
}
switch case
switch case
和if
本质是一个东西,但是在某些场景,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://如果上面都没执行,会执行default
fmt.Println("星期八????")
}
}
switch
是没有case穿透的。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:
for
标准for循环
for 初始条件;判断条件;结束条件{
语句
}
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i)
}
}
无限循环
package main
import "fmt"
func main() {
for{
fmt.Println("666")
}
}
for range
for ragne
可以很方便循环数组,切片,字符串,map,channel等。package main
import "fmt"
func main() {
var student_list = [...]string{"张三", "李四", "王五"}
for index, v := range student_list {
//index为下标,v是每一个的值
fmt.Println(index, v)
}
}
如果数组,切片,字符串
index是下标,v是值
如果是map
index是键,v是对(值)
如果是通道
只有一个值,就是通道内的值
goto
goto
可以通过标签在代码间无条件跳转,这就造成了一个局面,如果使用gote
过多,会造成逻辑混乱,跳来跳去。package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
for j := 0; j < 10; j++ {
if j == 2 {
// 直接跳转到下面的 breakTag 标签
goto breakTag
}
fmt.Printf("%v-%v\n", i, j)
}
}
//要跳转的标签
breakTag:
fmt.Println("结束for循环")
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!