Go语言学习笔记 --- 运算符

go语言学习笔记 — 基础 — 基本语法 — 运算符:go中的运算符 算术运算符 下表列出了所有Go语言的算术运算符。假定A值为10,B值为20。 运算符 描述 实例 + 相加 A + B 输出结果 30 - 相减 A - B 输出结果 -10 * 相乘 A * B 输出结果 200 / 相除 B / A 输出结果 2 % 求余 B % A 输出结果 0 ++ 自增 A++ 输出结果 11 – 自减 A-- 输出结果 9 package main import "fmt" var a int = 21 var b int = 1 阅读详情

学习笔记根据 无闻 go语言基础教程 整理

Go 中的运算符

  • Go 中的运算符都是从左到右的

  • 优先级 (从高到低)

  • 一元运算符:
    ^ !
  • 二元运算符:
    \*   /  %  <<  >>  &  &^
    \+  -  |  ^
    == != < <= >= >
    <-
    &&
    ||
    
    

& 与 && 的区别

  • & 会将两边的表达式同时执行

  • && 只要左边的表达式不成立,右边的表达式便不会被执行

示例代码:

import (
	"fmt"
)

/*
 6: 0110
11: 1011
-------------
&   0010 = 2
|   1111 = 15
^   1101 = 13
&^  0100 = 4
*/

const (
	B float64 = 1 << (iota * 10)
	KB
	MB
	GB
	PB
	TB
)

func main() {
	test1()
	test2()
	test3()
}

func test1() {
	fmt.Println(!true) // false
	fmt.Println(1 << 10) // 1024
	fmt.Println(1 << 10 << 10) // 1048576
	fmt.Println(1 << 10 << 10 >> 10) // 1024
	fmt.Println()
	fmt.Println(6 & 11) // 2
	fmt.Println(6 | 11) // 15
	fmt.Println(6 ^ 11) // 13
	fmt.Println(6 &^ 11) // 4
}

func test2() {
	a := -1
	if a > 0 && (10/a) > 1 {
		fmt.Println("fine!") // 不会被执行
	}
}

func test3() {
    fmt.Println(B)  // 1
    fmt.Println(KB) // 1024
    fmt.Println(MB) // 1.048576e+06
    fmt.Println(GB) // 1.073741824e+09
    fmt.Println(PB) // 1.099511627776e+12
    fmt.Println(TB) // 1.125899906842624e+15
}
Open3D:读写点云与可视化(C++) 迭代 //Open3D #include "Open3D/Open3D.h" //Eigen #include "Eigen/Dense" void testOpen3D::xjGetInformation(const QString &pcPath) { /* read PC */ auto cloud_ptr = std::make_shared<open3d::geometry::PointCloud>(); if (!open3d::io::ReadPointCl 阅读详情

相关推荐

CAN通信:EB中配置CAN驱动,配置参数解析

以S32K314芯片说明,其他芯片不同,参数配置也有差异。

zhangxiaio1的博客 2174

golang 的 操作符号“<-“是什么

https://bbs.youkuaiyun.com/topics/391922084 goroutine是golang中在语言级别实现的轻量级线程,仅仅利用 go 就能立刻起一个新线程。多线程会引入线程之间的同步问题,在golang中可以使用channel作为同步的工具。 通过channel可以实现两个goroutine之间的通信。 创建一个channel, make(chan TYPE {, NUM}) , TYPE指的是channel中传输的数据类型,第二个参数是可选的,指的是channel的容量大小。 向cha

qq_39352598的博客 5256

车辆贷款违约预测挑战赛

2021科大讯飞-车辆贷款违约预测挑战赛--方案简介车贷违约预测问题,目的是建立风险识别模型来预测可能违约的借款人。预测结果为借款人是否可能违约,属于二分类问题。偏数据挖掘的比赛,关键点是如何基于对数据的理解抽象归纳出有用的特征。站在大佬的视角,尝试学习总结,站在巨人的肩膀上,也许看得会更远一些。直接进入主题,开始学习套路,芜湖~特征工程1、常用库、数据导入import pandas as pd import numpy as np import lightgbm as lgb import xgboost

平平淡淡,戒急用忍,一生学闭嘴。 3341

golang中的^(按位异或)和<<(左移) 、>>(右移)以及&^(位清移)运算符号

golang中的^(按位异或)和(右移)以及&^(位清移)运算符号

Lchangqing的博客 5162

记一次使用STM32F042K6芯片内部HSI48M时钟导致CAN总线报错问题

深入去解决某个问题时,也会加深你对其它部分的了解和思考,比如这里让我又重新了解和CAN的采样点和CAN报错机制。

ApexYuan 861

大模型面试题34:Transformer的Encoder和Decoder区别与协作

Encoder:双向自注意力,专注理解输入,输出语义特征;Decoder:掩码自注意力+编码器-解码器注意力,专注生成输出,实现语义对齐。

叫好与叫座虽然不是对立面,但想在同一个作品中达到双重效果很难。 815

一、Go基础知识5、运算符

假设A为十进制数60,其二进制数即为 0011 1100,A << 2结果为 240,二进制为1111 0000。假设A为十进制数60,其二进制数即为 0011 1100,A >> 2结果为 15,二进制为0000 1111。解释:A << 2即A的二进制数往左移2位,原本前面两个扔掉,其他数左移,后面少掉的两位补上0。解释:A >> 2即A的二进制数往右移2位,原本后面两个扔掉,其他数右移,前面少掉的两位补上0。其中,A是十进制数60的二进制,B是十进制数13的二进制。左移n位就是乘以2的n次方。

风不归的乐园 306

智能解决装箱问题:使用优化算法实现高效包装

装箱问题(Bin Packing Problem)是组合优化领域中的一个经典问题,主要涉及如何将一系列对象高效地装入有限数量的容器(或“箱”)中,同时满足特定的约束条件。这个问题的目标是最小化所需使用的箱子数量或者最大化箱子的装载效率,以减少空间或资源的浪费。

MindOpt_003的博客 5552

Go运算符

运算符用于在程序运行时执行数学或逻辑运算 Go语言内置的运算符有: - 算术运算符: 加 + , 减 - , 乘 *, 除 / 自增 ++, 自减 -- - 关系运算符: == , !=, &gt;, &lt;, &gt;=, &lt;= 值为True 或者 False - 逻辑运算符: &amp;&amp;, ||, ! 值为 True or False - 位运算符: 对整数 在内...

JDMXI的博客 470

强化学习-马尔可夫模型

前文提到了强化学习源自马尔可夫决策过程,本文从马尔可夫概念入手,讲解和马尔可夫有关的模型和概念。在马尔科夫决策过程中,我们有一个智能体,它在一个马尔科夫过程中进行决策,每次决策都会导致状态的转移和获得即时奖励。智能体的目标是通过选择动作来最大化未来奖励的期望值。通常马尔科夫决策过程是个五元组:SAPRγSAPRγS 表示状态集合,代表智能体可能处于的所有状态。A 表示动作集合,代表智能体可以采取的所有动作。

君子之学必日新,日新者日进也。不日新者必日退,未有不进而不退者 8063

【python基础】一文掌握 Jupyter Notebook 的使用(超级详细!)

是一个非营利组织,致力于为多种编程语言的交互式计算开发开源软件、开放标准和服务。Jupyter 于 2014 年由 Fernando Pérez 从IPython衍生出来,支持几十种编程语言的执行环境。Jupyter 项目主要开发并支持(.ipynb 文件格式)、JupyterHub和JupyterLab等交互式计算产品。

数据知道的博客 1万+

初识go语言---<<和>>分别表示什么

今天有个同事问我<<和>>是什么意思。。。如此简单的问题出自一个2年开发经验的嘴里略显尴尬。。还是总结一下吧。。 简单的来说就是像左移位和像右移位 比如说0010 向左移1位就是0100,所左移位就是*2 向右移位就是0001也就是/2 那么简单的说其实就是3<<4 可以表示为3乘以2的4次方 那么简单的说其实就是2>>3 可以表示为2除以2的3次方 ...

水镜先生的博客 2867

GEPA_AIME教程:使用GEPA优化数学问题求解的完整指南

本教程展示了如何使用DSPy框架中的GEPA(Generative Evolutionary Prompt Adaptation)优化器来提升大语言模型在数学竞赛问题(AIME)上的表现。# 创建基础的链式思考程序"""带有详细反馈的评估指标,为GEPA提供学习信号"""try:# 处理解析错误feedback_text = f"最终答案必须是一个有效的整数。你回答了'

步子哥的博客 1387

Go/golang语言学习笔记(三):运算符

Go/golang语言学习笔记(三):运算符

qq_63536895的博客 793

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

GoLang学习笔记

本文全篇都是GoLang的学习笔记,主要从GoLang产生的背景、特性开始,将go语言学习划分成基础、进阶两个部分展开。主要针对有编程经验的开发人员食用更佳,目前暂定为学习大纲+知识点的形式罗列,后续考虑加入具体案例和思维导图表示层级关系。说明【?】标题中间带有?说明带有疑惑,【{}】标题层级中间带有{}说明是重点章节,【[]】标题层级中间带有[]说明章节中难度较高,建议仔细阅读。目录前言Go语言简介GoLang产生背景GoLang特性Go语言基础Go程序基本概念Go程序基本结构应用程序入口退出返回值。

阿凌哥哥 1153

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Go语言学习笔记四: 运算符

Go语言学习笔记四: 运算符 这章知识好无聊呀,本来想跨过去,但没准有初学者要学,还是写写吧。 运算符种类 与你预期的一样,Go的特点就是啥都有,爱用哪个用哪个,所以市面上的运算符基本都有。 1. 算术运算符 1. 关系运算符 1. 逻辑运算符 1. 位运算符 1. 赋值运算符 1. 其他运算符 算术运算符 包括:+,-, *,/, %, ++, --。 a :...

kriszhang的博客 339

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Go语言学习笔记-004运算符

运算符 算术运算符 运算符 描述 + 相加 - 相减 * 相乘 、 相除 % 求余 注意:++(自增)和 --(自减)在Go语言中是单独的语句,并不是运算符 关系运算符 运算符 描述 == 检查两个值是否相等,如果相等返回True否则返回False != 检查两个值师范不相等,如果不相等返回True否则返回False > 检查左边值是否大于右边值,如果是返回True否则返回False >= 检查左边值是否大于等于右边值,如果是返

藤藤菜的专栏 899

Go语言学习笔记——(四)运算符

Go语言中的运算符及其优先级

weixin_43592586的博客 753

go语言学习笔记三 指针,常用运算符

1.指针的定义,使用,赋值 package main import "fmt" func main() { var i int64 = 1 fmt.Println("i地址:", &i) // 定义指针ptr 值为变量i的地址 var ptr *int64 = &i fmt.Printf("ptr的地址:%v; ptr的值%v\n", ptr, *ptr) i =...

安安静静敲代码 282

GO语言学习笔记02:运算符

位运算符仅作用与整数值,运算目标位二进制位,包括按位与( & )、按位或( | )、按位异或( ^ )、右移( << )、左移( >> )、清除标志位( &^ )、按位取反( ^ )有符号整数再移位之后,可能会出现正值变负值,负值变正值的情况。如果位移之后最高位为0,则为正值,最高位为1则为负值。其中,参数为x为指数,y为指数,即x^y,此外还有Pow10函数。-5 % -3 //结果:-3。11 % -4 //结果:3。23 % -5 //结果:3。

qq_74218299的博客 615

Go语言学习笔记4:运算符

运算符:包括:算数运算,位运算,逻辑运算运算符结合律全部从左到右优先级:go中不支持运算符重载。

yyfaith的博客 264

go语言学习笔记 — 基本语法 — go运算符:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、运算符优先级

算术运算符 下表列出了所有Go语言的算术运算符。假定A值为10,B值为20。 运算符 描述 实例 + 相加 A + B 输出结果 30 - 相减 A - B 输出结果 -10 * 相乘 A * B 输出结果 200 / 相除 B / A 输出结果 2 % 求余 B % A 输出结果 0 ++ 自增 A++ 输出结果 11 – 自减 A-- 输出结果 9 ...

yjk13703623757的博客 493

《Go语言学习笔记》 - 第三章 - 运算符和初始化

1. 运算符 1.1 运算符的优先级 优先级如下图所示,后缀运算符优先级最高,一元运算符优先级次之,逗号垫底。 1.2 运算符注意事项 在二元运算符中,除位移操作外,其余操作的操作数类型必须相同,如果其中一个是无显式声明的常量,那么该常量操作数会自动转型。 func main(){ const v = 20 var a byte = 10 b := a + v fmt.Print...

来自东印度的人 237

Go语言学习笔记02--go语言运算符与流程控制分支语句

1.并发概念概述     并发指的是同一时间的多次访问。解决并发途径一般就是创建多个服务器去分流访问,     对于服务器而言,响应速度越快那么并发量肯定就越高。     或者是通过语言逻辑来解决分流。go语言对于并发天生支持性就非常好     ps:打开mac系统终端快捷方式 cmd+space     ps:查看go安装版本 go version 2.字符和字符串的区别     1)转义字...

FengziTianYu的专栏 354

go interface转int_go语言学习笔记(5)- 指针、标识符、运算符

题目演示:写一个程序,获取一个int变量的num的地址,并显示。将num的地址赋给指针ptr,并通过ptr去修改num的值。指针使用细节:(1)值类型,都有对应的指针类型,形式为 数据类型, 比如 int对应的指针类型就是int,那么float32对面的指针类型就是*float32,以此类推。(bool、string、数组和结构体)值类型和引用类型介绍值类型:基本数据类型int系列、float系列...

weixin_39593718的博客 336

go语言学习笔记2,iota枚举,算术运算符,类型转换

1.a枚举格式如果写在一行中 值相等 如果换行值在上一行加一 2.ta只需要对第一个进行iota赋值 后面会依次增长 3.iota自定义枚举量 今天学到的一个有用的东西就是在go语言中自增自减不能出现在表达式中 这样子写就会报错,因为 二义性 在不同操作系统中运算方式不同 结果可能会产生偏差 但是相对于Java语言就不会,它会有先自增或者先自减 以上就是在Java中测试。 但...

盛难晨 723
上一篇: Go语言学习笔记 --- 常量的定义详解
下一篇: 考研英语 - word-list-33
Wang's Blog
博客等级 码龄12年 7438粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值