06【保姆级】-GO语言的运算符

之前我学过C、Java、Python语言时总结的经验:

  1. 先建立整体框架,然后再去抠细节。
  2. 先Know how,然后know why。
  3. 先做出来,然后再去一点点研究,才会事半功倍。
  4. 适当的囫囵吞枣。因为死抠某个知识点很浪费时间的。
  5. 对于GO语言,切记遵守语法格式规则。(例如python语言、例如SpringBoot框架等)
    解释:某些知识点,就是很难了解,那么先做出来,然后继续向前学习,可能在某个时间点我们就会恍然大悟。

05【保姆级】-GO语言的运算符

  • 一、 运算符的基本分类
  • 二、算数运算符
    • 1. 介绍
    • 2. 取余和取模
    • 3. ++ 和--
  • 三、关系运算符
  • 四、逻辑运算符
  • 五、赋值运算符
  • 六、位运算符
  • 七、其他运算符
  • 八、终端输入
    • fmt.Scanln
    • fmt.Scanf

一、 运算符的基本分类

运算符是一种特殊的符号,用于运算、比较和赋值等。

  • 算术运算符
  • 比价运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算符
  • 其他运算符
    (ps:Go语言中没有三元运算符的)

二、算数运算符

1. 介绍

算数运算符是对 数值类型的变量 进行运算的,比如加减乘除。在Go程序中实用的非常多。

在这里插入图片描述

2. 取余和取模

  1. 对于除号"",它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。 例如: x:= 19/5,结果是 3
  2. 当对一个数取模时,可以等价 a%b=a-a/b*b ,这样我们可以看到 取模的一个本质运算。
	//  关于 运算符:  【/】 取模。
	fmt.Println(10 / 3)   // 3
	fmt.Println(10.0 / 4) // 2.5
	fmt.Println(10.0 / 5) // 2

	//  关于 运算符:  【%】 取余。 就是余数
	fmt.Println(10 % 3) // 1
	fmt.Println(10 % 4) // 2
	fmt.Println(10 % 5) // 0

练习题:假期还有97天,那么还剩下几个星期,零几天?

var day int = 97
fmt.Println("还有", day/7, "个星期", "  零", day%7, "天")  
// 还有 13 个星期   零 6 天

3. ++ 和–

  1. Golang的自增自诚只能当做一个独立语言使用时,不能这样使用 【b=a++ 或者b=a–】

  2. Golang的++ 和-- 只能写在变量的后面,不能写在变量的前面,即:只有 a++/ a-- 没有 ++a、–a
    在这里插入图片描述
    在这里插入图片描述

  3. Golang的设计者去掉c/iava 中的 自增自诚的容易混淆的写法,让Golang更加简洁.

	var a int = 10
	a++
	fmt.Println(a)  // 11
	a--
	fmt.Println(a)  // 10

三、关系运算符

  1. 关系运算符的结果都是bool类型,也就是要么就是true,要么就是false
  2. 关系表达式,经常用在if结构的条件中,或者循环的条件中。
  3. 比较运算符是:“==”,不能写成“=”

在这里插入图片描述

四、逻辑运算符

用于连接多个条件(一般就是关系运算符) ,最终结果也是一个Bool值

  1. 【&&】也叫短路与:如果第一个条件为false,则第二个条件不会判断,最终结果为false
  2. 【||】他叫短路或:如果第一个条件为true,则第二个条件不会判断,最终结果为true

在这里插入图片描述

在这里插入图片描述

五、赋值运算符

赋值运算符就是将某个运算后的值,赋给指定的变量。
在这里插入图片描述

在这里插入图片描述

面试题: 如何将两个数进行互换,其中不能使用第三个变量。

	a := 12
	b := 5

	fmt.Println("更改前:", "a=", a, " b=", b)
	a = a + b // a= 17
	b = a - b // b = 12
	a = a - b // 5
	fmt.Println("更改后:", "a=", a, " b=", b)
	
	//更改前: a= 12  b= 5
	//更改后: a= 5  b= 12 

在这里插入图片描述

六、位运算符

七、其他运算符

在这里插入图片描述

八、终端输入

fmt.Scanln

当程序执行到 【fmt.Scanln(&xxx)】时,程序会停在这里,等待用户输入后,进行回车,然后才会执行下一条指令。
在这里插入图片描述

fmt.Scanf

可以按指定的格式进行输出。例如可以使用空格进行隔开。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/120835.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JDBC(二)

第4章 操作BLOB类型字段 4.1 MySQL BLOB类型 MySQL中,BLOB是一个二进制大型对象,是一个可以存储大量数据的容器,它能容纳不同大小的数据。 插入BLOB类型的数据必须使用PreparedStatement,因为BLOB类型的数据无法使用字符串拼接写…

OAuth 2.0实现统一认证

OAuth 2.0协议概念: OAuth 是 Open Authorization 的简写。OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 OAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第…

Kotlin HashMap entries.filter过滤forEach

Kotlin HashMap entries.filter过滤forEach fun main(args: Array<String>) {val hashMap HashMap<String, Int>()hashMap["a"] 1hashMap["b"] 2hashMap["c"] 3println(hashMap)hashMap.entries.filter {println("filter $…

【MongoDB】索引 – 文本索引(指定语言)

一、语言列表 语言名称 代码 danish da dutch nl english en finnish fi french fr german de hungarian hu italian it norwegian nb portuguese pt romanian ro russian ru spanish es swedish sv turkish tr 二、指定默认语言 创建文本索…

UseGalaxy.cn生信云平台文本文件操作手册

文本文件是生物信息学中应用非常广泛的文本格式&#xff0c;甚至可以说是最重要的文件格式&#xff0c;比如常见的测序下机数据Fastq、参考基因组保存格式Fasta、比对文件SAM&#xff0c;以及突变列表VCF&#xff0c;它们都是文本文件。熟练地进行文本文件的处理&#xff0c;对…

upload-labs-1

文章目录 Pass-01 Pass-01 先上传一个正常的图片&#xff0c;查看返回结果&#xff0c;结果中带有文件上传路径&#xff0c;可以进行利用&#xff1a; 上传一个恶意的webshell&#xff0c;里面写入一句话木马&#xff1a; <?php eval($_POST[cmd]); echo "hello&quo…

【单片机】初次实验:Keil51的使用

哔哩哔哩/CSDN/博客园&#xff1a;萌狼蓝天 延时器 delay(int count){int i,j;for(i0;i<count;i){for(j0;j<1000;j);} } 瞧一瞧 题目要求&#xff1a;P0口接八个发光二极管&#xff0c;先让后面四个灯亮&#xff0c;再让前面四个灯亮&#xff0c;循坏 # include <REGX…

京东数据分析(京东销量):2023年9月京东投影机行业品牌销售排行榜

鲸参谋监测的京东平台9月份投影机市场销售数据已出炉&#xff01; 根据鲸参谋电商数据分析平台的相关数据数据显示&#xff0c;9月份&#xff0c;京东平台投影机的销量为13万&#xff0c;环比下滑约17%&#xff0c;同比下滑约25%&#xff1b;销售额将近2.6亿&#xff0c;环比下…

eNsp下如何使用wireshark抓包

文章目录 拓扑图抓包操作 拓扑图 抓包操作 可以通过下图上的指示 来设置 Time列的显示样式。 这里有个缺点就是就是抓取ensp上的虚拟设备上的数据包时的&#xff0c;年月日时间显示的不对。暂时无解决办法。 一般选择 日期和时间&#xff08;日期和时间与当前标准时间对应上时…

程序员找副业有哪几个方向(纯干货)

前序 关于副业对于我自己的看法一般会先从自身的职业去拓展&#xff0c;毕竟自己所在的行业自己会更清楚有哪些资源去获取&#xff0c;那么首先我们可以先问万能的gpt我们程序员做副业有哪些实用的推荐&#xff0c;看看它怎么说的 外包网站接单&#xff1f; 每次大家提到程序…

python循环队列

导语&#xff1a; 队列是一种先进先出&#xff08;first in first out,FIFO&#xff09;的线性表&#xff0c;是一种常用的数据结构。 它只允许在表的前端&#xff08;front&#xff09;进行删除操作&#xff0c;而在表的后端&#xff08;rear&#xff09;进行插入操作&#…

C语言——计算1!+2!+3!+......+10!

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int n;int ret 1;int sum 0;for(n 1; n < 10; n){ret * n;sum sum ret;}printf("sum %d\n",sum);return 0; }

C++基础——类与对象

1 概述 C是面向对象的语言&#xff0c;面向对象语言三大特性&#xff1a;封装、继承、多态。 C将万事万物抽象为对象&#xff0c;对象上有其属性和行为。 2 封装 2.1 封装的意义 封装是面向对象的三大特性之一&#xff0c;封装将属性和行为作为一个整体&#xff0c;对属性和…

接口自动化面试题

1.http请求都包含哪些内容&#xff0c;请求头和请求体有哪些内容 请求行/请求头/请求体/空行 请求行&#xff1a;请求方法字段、URL字段、http协议版本 例如&#xff1a;GET /index.html HTTP/1.1 请求方法&#xff1a;GET、POST、PUT、DELETE、OPTIONS、TRACE、CO…

2007-2022年全国各地级市金融机构网点数据

2007-2022年地级市金融机构网点数据 1、时间&#xff1a;2007-2022年 2、指标&#xff1a;行政区划代码、年份、城市名称、所属省份、银行网点数量、其中-政策性银行及国家开发银行营业网点占比、其中-商业银行营业网点数量占比、其中-农村金融机构营业网点数量占比 3、范围…

20.8 OpenSSL 套接字SSL传输文件

有了上面的基础那么传输文件的实现就变得简单了&#xff0c;在传输时通常我们需要打开文件&#xff0c;并每次读入1024个字节的数据包&#xff0c;通过SSL加密传输即可&#xff0c;此处的文件传输功能在原生套接字章节中也进行过详细讲解&#xff0c;此处我们还是使用原来的密钥…

Excel 转 Json 、Node.js实现(应用场景:i18n国际化)

创作灵感来源于在线转换是按照换行符去转换excel内容换行符后很难处理 本文是按单元格转换 const xlsx require(node-xlsx) const fs require(fs) const xlsxData xlsx.parse(./demo.xlsx) // 需要转换的excel文件// 数据处理 方便粘贴复制 const data xlsxData[2].data …

Hello Vue!

目录 前言 hello vue 为什么要new Vue(),而不能直接调用Vue()? Vue构造函数中的形参options template配置项 $mount()方法 前言 从此篇博客开始&#xff0c;将开启vue的学习&#xff0c;查缺补漏。 只要学计算机语言&#xff0c;那么hello xxx那一定是入门第一行代码了…

CSS 链接、列表、表格、盒子模型

一、CSS链接: 不同的链接可以由不同的样式。链接的样式可以用任何CSS属性&#xff08;比如颜色、字体、背景等&#xff09;。 链接的四种状态&#xff1a; a.link&#xff1a;正常&#xff0c;未访问过的链接&#xff1b; a.visited&#xff1a;用户已访问过的链接&#xf…

什么是CE认证?蓝牙耳机出口欧盟CE认证如何办理?CE-RED认证办理

蓝牙耳机是一种基于蓝牙技术的一种小型设备&#xff0c;只需要把这种轻巧的设备藏在耳机边而不需要直接使用通讯设备&#xff08;手机、电脑等&#xff09;就可以实现自由通话。蓝牙耳机就是将蓝牙技术应用在免持耳机上&#xff0c;让使用者可以免除恼人电线的牵绊&#xff0c;…