首页/新闻资讯/正文详情

【Go语言基础【5】】运算符基础

发布时间:2026/11/3 18:26:08 来源:云帆数科 栏目:资讯中心
【Go语言基础【5】】运算符基础
文章目录一、算术运算符做数学计算二、关系运算符比较两个值的关系三、逻辑运算符组合布尔条件四、位运算符操作二进制位五、赋值运算符给变量赋值六、其他运算符取地址与解引用1. 取地址运算符2. 解引用运算符*七、运算符优先级决定计算顺序一、算术运算符做数学计算作用对数值类型整型、浮点型等进行数学运算类似日常的加减乘除。运算符与示例运算符含义示例结果说明加法5 38-减法10 - 46*乘法3 * 26/除法10 / 33整数除法取整%取余模运算10 % 3110 除以 3 余 1自增a : 2; aa变为3--自减b : 5; b--b变为4注意事项类型必须一致不能混合不同类型运算例如int和float64不能直接相加varaint10varbfloat6420.5c:ab// 报错需显式转换类型float64(a) b整数除法的特性整数相除结果为整数会直接丢弃小数部分fmt.Println(5/2)// 输出 2非 2.5自增/自减只能作为语句不能在表达式中使用如print(a)只能单独写为a或a--。二、关系运算符比较两个值的关系作用比较两个值的大小、是否相等结果为布尔值true或false常用于条件判断如if语句。运算符与示例运算符含义示例结果说明等于go gotrue!不等于5 ! 3true大于10 5true大于等于3 3true小于2 8true小于等于5 10true示例条件判断age:18ifage18{fmt.Println(成年)// 输出成年}else{fmt.Println(未成年)}三、逻辑运算符组合布尔条件作用对布尔值进行逻辑运算用于组合多个条件判断。运算符与示例运算符含义示例结果说明逻辑与ANDtrue falsefalse必须两边都为真||逻辑或ORtrue || falsetrue只要一边为真!逻辑非NOT!truefalse取反示例组合条件score:85isMale:trueifscore80isMale{// 同时满足分数80且是男性fmt.Println(符合条件)// 输出符合条件}四、位运算符操作二进制位作用对整数的二进制位进行运算常用于底层开发、加密、协议解析等场景。运算符与示例以a60二进制0011 1100和b13二进制0000 1101为例运算符含义二进制运算示例结果十进制按位与a b→0000 110012|按位或a | b→0011 110161^按位异或a ^ b→0011 000149左移a 2→1111 0000240右移a 2→0000 111115应用场景按位与提取特定位如num 1判断奇偶性结果为1是奇数0是偶数。左移快速计算乘法左移n位相当于乘以2^n如3 2 3*412。右移快速计算除法右移n位相当于除以2^n如8 2 8/42。五、赋值运算符给变量赋值作用将右侧的值赋给左侧变量支持复合运算简化代码。运算符与示例运算符含义等价写法示例简单赋值a bvar a 10加后赋值a a ba 5→a a 5-减后赋值a a - bb - 3→b b - 3*乘后赋值a a * bc * 2→c c * 2/除后赋值a a / bd / 4→d d / 4%取余后赋值a a % be % 3→e e % 3示例复合赋值简化代码varcountint5count3// 等价于 count count 3 → count 变为 8count*2// 等价于 count count * 2 → count 变为 16六、其他运算符取地址与解引用1. 取地址运算符作用获取变量的内存地址指针。示例varnumint10addr:num// 获取 num 的地址addr 是 *int 类型fmt.Println(addr)// 输出地址如 0xc00001a0b82. 解引用运算符*作用通过指针访问其指向的值。示例varnumint10ptr:num// ptr 指向 num 的地址*ptr20// 通过指针修改 num 的值todo不带*可以吗fmt.Println(num)// 输出 20七、运算符优先级决定计算顺序运算符优先级决定表达式中不同运算的执行顺序优先级高的先算如下算术 关系 逻辑 赋值高优先级*、/、%、、、、^、|中优先级、-低优先级、!、、、、、、||、赋值运算符示例优先级影响结果a:53*2// 先算乘法 3*26再算加法 5611b:(53)*2// 括号提升优先级先算加法 538再算乘法 8*216

相关推荐

【Go语言基础【3】】变量、常量、值类型与引用类型
【Go语言基础【3】】变量、常量、值类型与引用类型

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 18:26:08

【Go语言基础【17】】切片:一种动态数组
【Go语言基础【17】】切片:一种动态数组

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 18:26:08

eslav_PP-OCRv5_mobile_rec_onnx预处理流程详解:RecResizeImg与MultiLabelEncode技术
eslav_PP-OCRv5_mobile_rec_onnx预处理流程详解:RecResizeImg与MultiLabelEncode技术

eslav_PP-OCRv5_mobile_rec_onnx预处理流程详解:RecResizeImg与MultiLabelEncode技术 【免费下载链接】eslav_PP-OCRv5_mobile_rec_onnx 项目地址: https://ai.gitcode.com/paddlepaddle/eslav_PP-OCRv5_mobile_rec_onnx 飞桨PaddlePaddle的eslav_PP-OCRv5_… · 2026/11/3 18:26:08

物联网安全通信实战:TLCP协议与安全芯片的密钥保护方案
物联网安全通信实战:TLCP协议与安全芯片的密钥保护方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:59:36

一晚+两百元:实测AI操作硬件的真实门槛
一晚+两百元:实测AI操作硬件的真实门槛

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:59:36

嵌入式Linux系统开发21天速成:从环境搭建到驱动入门全链路解析
嵌入式Linux系统开发21天速成:从环境搭建到驱动入门全链路解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:59:36

施耐德M580固件安全分析与解密:VxWorks镜像拆解实战
施耐德M580固件安全分析与解密:VxWorks镜像拆解实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:59:36

工控机选型避坑指南:从场景倒推配置与接口协议实战
工控机选型避坑指南:从场景倒推配置与接口协议实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:59:36

ESP32在线开发完全指南:不装环境也能玩转20+浏览器工具
ESP32在线开发完全指南:不装环境也能玩转20+浏览器工具

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 10:58:36

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

AI辅助技术栈评估:提升研发决策效率60%
AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17

从生成Token到直接决策:Jev如何重塑AI Agent工程实践
从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17

32G统一内存跑大模型:内存账、TPS实测与端云分流
32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码