如何了解Go语言基础之运算符和流程控制
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本篇内容介绍了"如何了解Go语言基础之运算符和流程控制"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
千家信息网最后更新 2025年11月07日如何了解Go语言基础之运算符和流程控制
switch case
for
无限循环
for range
本篇内容介绍了"如何了解Go语言基础之运算符和流程控制"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
运算符
运算符这个名字听着玄乎,其实我们平常见的很多了,就像=,+,/之类的。
运算符主要分为
算数运算符
关系运算符
逻辑运算符
位运算符
赋值运算符
下面就来简单了解以下叭。
算数运算符
算数运算符顾名思义,主要用在算数中,加减乘除了啥的
简单了解以下叭。
| 运算符 | 描述 |
|---|---|
| + | 相加 |
| - | 相减 |
| * | 相乘 |
| / | 相除 |
| % | 求余 |
| ++ | 自加 |
| -- | 自减 |
关系运算符
| 运算符 | 描述 |
|---|---|
| == | 检查两个值是否相等,如果相等返回 True 否则返回 False |
| != | 检查两个值是否不相等,如果不相等返回 True 否则返回 False |
| > | 检查左边值是否大于右边值,如果是返回 True 否则返回 False |
| >= | 检查左边值是否大于等于右边值,如果是返回 True 否则返回 False |
| < | 检查左边值是否小于右边值,如果是返回 True 否则返回 False |
| <= | 检查左边值是否小于等于右边值,如果是返回 True 否则返回 False |
逻辑运算符
| 运算符 | 描述 |
|---|---|
| && | 逻辑 and 运算符。 如果两边的操作数都是 True,则为 True,否则为 False |
| || | 逻辑 or 运算符。 如果两边的操作数有一个 True,则为 True,否则为 False |
| ! | 逻辑 NOT 运算符。 如果条件为 True,则为 False,否则为 True |
注:逻辑运算符是很重要的,开发中经常用到。
位运算符
位运算符有些底层,特殊情况会用到
| 运算符 | 描述 |
|---|---|
| & | 参与运算的两数各对应的二进位相与。 (两位均为1才为1) |
| | | 参与运算的两数各对应的二进位相或。 (两位有一个为1就为1) |
| ^ | 参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。 (两位不一样则为1) |
| << | 左移n位就是乘以2的n次方。 "a< |
| >> | 右移n位就是除以2的n次方。 "a>>b"是把a的各二进位全部右移b位。 |
赋值运算符
赋值运算符在开发中用的也是比较多的。
| 运算符 | 描述 |
|---|---|
| = | 简单的赋值运算符,将一个表达式的值赋给一个左值 |
| += | 相加后再赋值 |
| -= | 相减后再赋值 |
| *= | 相乘后再赋值 |
| /= | 相除后再赋值 |
| %= | 求余后再赋值 |
| <<= | 左移后赋值 |
| >>= | 右移后赋值 |
| &= | 按位与后赋值 |
| |= | 按位或后赋值 |
| ^= | 按位异或后赋值 |
流程控制
在Go中,流程控制有以下几种。
if
if
switch case
for
标准for
forrange
goto(慎用)
if
语法
//方式一,一个ifif 条件{ //执行语句}//方式二,if条件不成功执行elseif 条件{ //if成功语句}else{ //if不成功语句}//方式三,带有else if得if 条件1{ //if成功语句}else if 条件2{ //if不成功,继续else if条件}else{ //上面都不成功,执行else}例子
package mainimport "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 mainimport "fmt"func main() {var week = 3switch 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://如果上面都没执行,会执行defaultfmt.Println("星期八????")}}
注:在Go中,switch是没有case穿透的。
Go的switch可以case多个值。
package mainimport "fmt"func main() {var week = 3switch week {case 1, 2, 3, 4, 5:fmt.Println("上班")case 6:fmt.Println("周六睡懒觉")case 7:fmt.Println("周日去旅游")default:fmt.Println("飞天了???")}}
for
标准for循环
语法
for 初始条件;判断条件;结束条件{ 语句}代码
package mainimport "fmt"func main() {for i := 0; i < 10; i++ {fmt.Println(i)}}
无限循环
谨慎执行!!!
package mainimport "fmt"func main() {for{fmt.Println("666")}}
for range
for ragne可以很方便循环数组,切片,字符串,map,channel等。
遍历数组示例
package mainimport "fmt"func main() {var student_list = [...]string{"张三", "李四", "王五"}for index, v := range student_list {//index为下标,v是每一个的值fmt.Println(index, v)}}
注:
如果数组,切片,字符串 index是下标,v是值如果是map index是键,v是对(值)如果是通道 只有一个值,就是通道内的值
补充:
在Go中,只有for循环,没有while。
for循环就两种方式。
goto
goto可以通过标签在代码间无条件跳转,这就造成了一个局面,如果使用gote过多,会造成逻辑混乱,跳来跳去。
所以,在开发中,要慎用,不到万不得已,不要使用。
示例
package mainimport "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循环")
}
"如何了解Go语言基础之运算符和流程控制"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
运算
运算符
条件
逻辑
成功
二进位
循环
检查
语句
流程
控制
右边
方式
代码
就是
数组
标签
开发
基础
语言
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
教育软件开发的工作描述
第十三章数据库技术基础
必发数据库
图书馆借书数据库
无接触服务的弊端网络安全
网络安全的保障措施四年级
一样的手游为啥服务器不同
sdc第五届网络安全峰会
数据库跑分是什么
网络安全绘画 内容
亚马逊 安全服务器
国际贸易与经济的数据库
防病毒服务器
校园网络安全论文700字
数据库设计密码属性
uci数据库可以下载数据吗
数据库覆盖了还可以恢复吗
ar软件开发估值
数据库的时间和空间怎么选
广东军工时间频率同步服务器
计算机网络技术前沿
网络安全重要性的论文
周跃网络技术ppt
美国软件开发商排名
阿里云服务器漏洞修复
数据库系统工程师报名条件
群星怎么服务器联机
数据库系统概念课程视频
国内财务软件开发公司
广州直销软件开发企业