手把手带你走进Go语言之运算符解析

 更新时间:2021年09月10日 16:32:02   作者:我是小白呀  
这篇文章主要介绍了手Go语言之运算符解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

概述

Golang 是一个跨平台的新生编程语言. 今天小白就带大家一起携手走进 Golang 的世界. 在这里插入图片描述

Go 运算符

运算符 (operator) 可以帮助我们在程序中执行数学或逻辑运算.

在这里插入图片描述

Go 语言内置的运算符有:

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符
  • 赋值运算符

算术运算符

运算符 描述
+ 相加
- 相减
* 相乘
/ 相除
% 取余
++ 自增
自减

例子:

package main

import "fmt"

func main() {

	// 定义变量
	var a = 10
	var b = 2

	// 调试输出
	fmt.Println(a + b)  // 相加
	fmt.Println(a - b)  // 相减
	fmt.Println(a * b)  // 相乘
	fmt.Println(a / b)  // 相除
	fmt.Println(a % b)  // 取余

	// 自加 & 自减
	a++
	b--
	fmt.Println(a)  // 自加
	fmt.Println(b)  // 自减

}

输出结果:

12
8
20
5
0
11
1

关系运算符

运算符 描述
== 检查两个值是否相等. 如果相等返回 True, 否则返回 False
!= 检查两个值是否不相等, 如果不相等返回 True, 否则返回 False
> 大于
< 小于
>= 大于等于
<= 小于等于

例子:

package main

import "fmt"

func main() {

	// 定义变量
	var a = 10
	var b = 2

	// 调试输出
	fmt.Println(a == b)
	fmt.Println(a != b)
	fmt.Println(a > b)
	fmt.Println(a < b)
	fmt.Println(a >= b)
	fmt.Println(a <= b)

}

输出结果:

false
true
true
false
true
false

逻辑运算符

运算符 描述
& 与运算符
| 或运算符
^ 异或运算符
<< 左移运算符, 左移 n 位就是乘以 2 的 n 次方. 低位补零.
>> 右移运算符, 右移 n 位就是除以 2 的 n 次方. 低位舍弃.

例子:

package main

import "fmt"

func main() {

	// 定义变量
	var a = 60  // 00111100
	var b = 13  // 00001101

	// 调试输出
	fmt.Println(a & b)  // 00001100: 12
	fmt.Println(a | b)  // 00111101: 61
	fmt.Println(a ^ b)  // 00110001: 49
	fmt.Println(a << 1) // 01111000: 120
	fmt.Println(a >> 1) // 00011110: 30

}

输出结果:

12
61
49
120
30

赋值运算符

运算符 描述
= 简单的赋值
+= 相加后再赋值
-= 相减后再赋值
/= 相除后再赋值
%= 取余后再赋值

例子:

package main

import "fmt"

func main() {

	// 定义变量
	var a = 10
	var b = 2
	var c int

	// 赋值运算符
	c = a
	fmt.Println(c)

	b += 2
	fmt.Println(b)

	b -= 2
	fmt.Println(b)

	a *= 2
	fmt.Println(a)

	a /= 2
	fmt.Println(a)

	a %= 3
	fmt.Println(a)
	
}

输出结果:

10
4
2
20
10
1

在这里插入图片描述

到此这篇关于手把手带你走进Go语言之运算符解析的文章就介绍到这了,更多相关Golang 运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Golang捕获panic堆栈信息的讲解

    Golang捕获panic堆栈信息的讲解

    今天小编就为大家分享一篇关于Golang捕获panic堆栈信息的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • Go实现短url项目的方法示例

    Go实现短url项目的方法示例

    这篇文章主要介绍了Go实现短url项目的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • Golang实现CronJob(定时任务)的方法详解

    Golang实现CronJob(定时任务)的方法详解

    这篇文章主要为大家详细介绍了Golang如何通过一个单 pod 去实现一个常驻服务,去跑定时任务(CronJob),文中的示例代码讲解详细,需要的可以参考下
    2023-04-04
  • golang复制文件夹移动到另一个文件夹实现方法详解

    golang复制文件夹移动到另一个文件夹实现方法详解

    这篇文章主要为大家介绍了golang复制文件夹并移动到另一个文件夹实现方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • golang 监听服务的信号,实现平滑启动,linux信号说明详解

    golang 监听服务的信号,实现平滑启动,linux信号说明详解

    这篇文章主要介绍了golang 监听服务的信号,实现平滑启动,linux信号说明详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • Go语言内置包的使用

    Go语言内置包的使用

    本文主要介绍了Go语言内置包的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Go设计模式之单例模式图文详解

    Go设计模式之单例模式图文详解

    单例模式是一种创建型设计模式,让你能够保证一个类只有一个实例,并提供一个访问该实例的全局节点,本文就通过图文给大家介绍一下Go的单例模式,需要的朋友可以参考下
    2023-07-07
  • golang模拟实现带超时的信号量示例代码

    golang模拟实现带超时的信号量示例代码

    这篇文章主要给大家介绍了关于golang模拟实现带超时的信号量的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-09-09
  • Golang使用第三方包viper读取yaml配置信息操作

    Golang使用第三方包viper读取yaml配置信息操作

    这篇文章主要介绍了Golang使用第三方包viper读取yaml配置信息操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 解析golang 标准库template的代码生成方法

    解析golang 标准库template的代码生成方法

    这个项目的自动生成代码都是基于 golang 的标准库 template 的,所以这篇文章也算是对使用 template 库的一次总结,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2021-11-11

最新评论