이름에서 알 수 있듯이 산술 연산자는 덧셈, 뺄셈, 곱셈, 나눗셈 등의 산술에 주로 사용됩니다.
간단한 소개는 다음과 같습니다.
operator
설명 추가
-
빼기
*
곱하기
/
나누기
%
나머지 찾기
++
직접 추가함
- -
자기감소
관계형 연산자
Operator
Description
==
두 값이 같은지 확인하세요. 같으면 True 반환, 그렇지 않으면 False 반환
!=
두 값이 같지 않은지 확인하고, 같지 않으면 True를 반환하고, 그렇지 않으면 False를 반환
>
왼쪽 값이 오른쪽 값보다 큰지 확인하고, 그렇다면 True를 반환하고, 그렇지 않으면 False를 반환합니다
>=
왼쪽 값이 오른쪽 값보다 크거나 같은지 확인하고, 같으면 True를 반환하고, 그렇지 않으면 False를 반환합니다
<
왼쪽 값 확인 오른쪽 값보다 작으면 True를 반환하고, 그렇지 않으면 False를 반환합니다.
논리 연산자
Operator
설명
&&
논리 및 연산자. 두 피연산자가 모두 True이면 True이고, 그렇지 않으면 False|
논리 또는 연산자입니다. 두 피연산자 모두 True이면 True이고, 그렇지 않으면 False
!
논리적 NOT 연산자입니다. 조건이 True이면 False, 그렇지 않으면 True
참고: 논리 연산자는 매우 중요하며 개발에 자주 사용됩니다.
비트 연산자
비트 연산자는 다소 낮은 수준이므로 특별한 상황에서 사용됩니다
Operator
Description
&
참여 연산 중인 두 숫자의 해당 이진수 비트를 AND로 연결합니다. (두 비트가 모두 1인 경우에만 1입니다.)
|
연산에 참여하는 두 숫자 각각에 해당하는 이진 OR입니다. (두 비트 중 하나가 1이면 1)
^
연산에 포함된 두 숫자의 해당 이진수 비트가 배타적이거나 해당 이진수일 때. 비트가 다르므로 결과는 1입니다.(두 자리 숫자가 다르면 1입니다.)
<<
n비트를 왼쪽으로 쉬프트하면 2의 n승이 됩니다. "a<
>>
n 비트를 오른쪽으로 쉬프트하면 2의 n승으로 나뉩니다. "a>>b"는 a의 모든 이진 비트를 b 비트만큼 오른쪽으로 이동합니다.
할당 연산자
할당 연산자는 개발에서도 흔히 사용됩니다.
Operator
Description
=
단순 할당 연산자는 표현식의 값을 lvalue에 할당합니다.
+=
추가한 후 할당
-=
빼고 값 할당
*=
곱한 다음 할당
/=
나누어 값을 할당하세요
%=
나머지를 찾아 할당하세요 가치
<<=
왼쪽으로 이동하여 값 지정
>>=
오른쪽으로 이동하여 값 지정
& =
비트 AND
|= 후 할당
비트별 OR 후 할당
^=
비트별 XOR 후 할당
프로세스 제어
Go에는 다음과 같은 유형의 프로세스 제어가 있습니다.
if
if
케이스 전환
for
표준 for
forrange
goto(주의해서 사용)
if
Syntax
//方式一,一个if
if 条件{
//执行语句
}
//方式二,if条件不成功执行else
if 条件{
//if成功语句
}else{
//if不成功语句
}
//方式三,带有else if得
if 条件1{
//if成功语句
}else if 条件2{
//if不成功,继续else if条件
}else{
//上面都不成功,执行else
}
로그인 후 복사
예
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("星期八????")
}
}
로그인 후 복사
注:在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
标准for循环
语法
for 初始条件;判断条件;结束条件{
语句
}
로그인 후 복사
代码
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i)
}
}
package main
import "fmt"
func main() {
var student_list = [...]string{"张三", "李四", "王五"}
for index, v := range student_list {
//index为下标,v是每一个的值
fmt.Println(index, v)
}
}