Go中如何进行除法运算

2023-12-23

我正在尝试用 Go 进行简单的除法。

fmt.Println(3/10)

这会打印 0 而不是 0.3。这有点奇怪。有人可以分享一下这背后的原因是什么吗?我想在 Go 中执行不同的算术运算。

Thanks


二元运算的操作数3 / 10是无类型常量。规格说的是关于无类型常量的二元运算 https://golang.org/ref/spec#Constant_expressions

如果二元运算的操作数是不同类型的无类型常量,则该运算以及(对于非布尔运算)结果将使用此列表后面出现的类型:整数、符文、浮点、复数。

Because 3 and 10是无类型整型常量,表达式的值是无类型整型(0在这种情况下)。

要获得浮点常量结果,操作数之一必须是浮点常量。以下表达式计算结果为无类型浮点常量0.3:

3.0 / 10.0
3.0 / 10
3 / 10.0

当除法运算具有无类型常量操作数和类型化操作数时,类型化操作数决定表达式的类型。确保键入的操作数是float64得到一个float64 result.

下面的表达式convert https://go.dev/ref/spec#Conversions int变量到afloat64得到float64 result 0.3:

var i3 = 3
var i10 = 10
fmt.Println(float64(i3) / 10)
fmt.Println(3 / float64(i10))

运营示范游乐场 https://go.dev/play/p/Uy0yTzbyAKh.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Go中如何进行除法运算 的相关文章

  • 空序列的算术平均值是多少?

    免责声明 不 我没有找到任何明显的答案 这与我的预期相反 在寻找代码示例时 算术平均值 我可以通过谷歌找到的前几个例子似乎是这样定义的 空序列生成的平均值为0 0 eg here https rosettacode org wiki Ave
  • Go MSSQL 连接

    如何提供 MSSQL 连接 它说它始终与代码相关 即使信息不正确 也不会报错 package main import database sql fmt github com denisenkom go mssqldb log var ser
  • Golang Appengine 项目无法构建

    我有一个使用 golang 的应用程序引擎项目 我已经大约一年没有碰过了 我现在无法让它在之前构建的机器上构建 我收到以下错误 go app builder 解析输入失败 解析器 src golang org x net internal
  • 基数排序浮动数据

    基数如何对浮点数据进行排序 例如 12 4 45 13 等 它会先读取小数点右侧吗 还是先读取小数点左侧 然后 如果它读取小数点右侧 它将如何处理这些数字 会它首先读取最右边的 请参阅本页的讨论 http codercorner com R
  • 如何在 Go 中表示可选字符串?

    我希望建模一个可以有两种可能形式的值 不存在或字符串 执行此操作的自然方法是Maybe String or Optional
  • 趋势线的最佳拟合曲线

    问题约束 数据集的大小是已知的 但数据本身并不已知 数据集每次增长一个数据点 趋势线一次绘制一个数据点 使用样条 贝塞尔曲线 Graphs 下面的拼贴画显示了具有相当准确的趋势线的数据集 这些图表是 左上 按小时计算 大约有 24 个数据点
  • 给定方法值,获取接收者对象

    Go 有没有办法从方法值获取接收者对象 例如有没有这样的MagicFunc这将使以下程序输出字符串my info来自底层 Foo 实例 package main import fmt type Foo struct A string fun
  • Go 中的 WebP 编码器/解码器

    是否有一个完整的 WebP 编码器和解码器与当前每周 或可分叉 兼容 它的速度与标准 png 相当吗 这个人在 GitHub 上有一个包 其中包含 WebP 的编码器和解码器 https github com chai2010 webp h
  • 是否支持动态变量?

    我想知道Go中是否可以动态创建变量 我在下面提供了一个伪代码来说明我的意思 我将新创建的变量存储在切片中 func method slice make type for i 0 i lt 10 i var variable i i slic
  • 为什么我的 SQL 占位符没有被替换(使用 Go pq)?

    根据文档 我正在这样做 var thingname string asdf var id int err database QueryRow SELECT id from things where thing thingname Scan
  • 如何在 OpenCV 中将 Float Mat 写入文件

    我有一个矩阵 Mat B 480 640 CV 32FC1 包含浮点值 我想将此矩阵写入一个可以打开的文件Notepad https en wikipedia org wiki Windows Notepad or 微软Word https
  • 如何在C#中执行Go函数

    有没有办法从 C 执行 Go 函数 例如 对于 Python 我会使用 Ironpython 我知道我可以生成一个进程来执行 Go 脚本 但如果可能的话 我真的不想回退到这样的解决方案 Google 搜索没有显示任何内容 那么有什么方法可以
  • 完全删除使用“go get”安装的软件包?

    我正在使用 Go 1 13 1 最新版本 我正在尝试完全删除我安装的软件包go get来自 GitHub 这go clean i
  • Go 无法推断赋值中的类型:“non-name on left side of :=”

    该片段按预期工作play golang org p VuCl OKMav http play golang org p VuCl OKMav i 10 next 11 prev i i next 然而这个几乎相同的片段给出了non name
  • Gorm 总是返回带有 nil 值的结构

    我正在使用 Gorm 构建 Go Web API 作为 Amazon RDS 中 Postgresql 数据库的 ORM 问题是 Gorm 总是返回一片结构 其值全部为零 尽管数据库已经填充了数据 切片中的结构体数量是否合适取决于LIMIT
  • 如何求两个地点的经纬度距离?

    我有一组位置的纬度和经度 怎么找distance从集合中的一个位置到另一个位置 有公式吗 半正矢公式假定地球是球形的 然而 地球的形状更为复杂 扁球体模型会给出更好的结果 如果需要这样的精度 你应该更好地使用文森特逆公式 See http
  • (转)如何使用toml文件?

    正如标题 我想知道如何使用 golang 中的 toml 文件 在此之前 我展示了我的 toml 示例 这样对吗 datatitle enable true userids 12345 67890 datatitle 12345 prop1
  • 为什么 isnormal() 说一个值是正常的,而实际上不是?

    include
  • 石和磅的格式正确吗?

    我有一个图表 用于显示重量 以英石和磅 lbs 为单位 该图表由记录中的数据填充 对于权重 数据类型为 Double 记录数据是在运行时编辑的 我需要知道一种正确格式化输入数据的方法 为了更好地理解 首先看一下这些示例值 它们表示为石和磅
  • 如何计算 3D 坐标的线性索引,反之亦然?

    如果我有一个点 x y z 如何找到该点的线性索引 i 我的编号方案是 0 0 0 是 0 1 0 0 是 1 0 1 0 是最大 x 维度 另外 如果我有一个线性坐标 i 我如何找到 x y z 我似乎无法在谷歌上找到这个 所有结果都充满

随机推荐

  • 继承:选择继承哪些基类方法[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有课Base并想写一个类Derive它仅继承了部分成员函数Base 有什么方便的方法可以做到这一点吗 例如 class Base void
  • 在 C# 中访问简单的布尔标志时,是否需要锁定或标记为易失性?

    假设您有一个在后台线程上运行的简单操作 您希望提供一种方法来取消此操作 因此您创建一个布尔标志 并从取消按钮的单击事件处理程序将其设置为 true private bool cancelled private void CancelButt
  • 如何将 Material UI 中的组件居中并使其具有响应能力?

    我不太了解 Material UI 网格系统 如果我想使用表单组件进行登录 在所有设备 移动设备和桌面设备 上将其置于屏幕中央的最简单方法是什么 因为您将在登录页面上使用它 这是我在使用 Material UI 的登录页面中使用的代码 材质
  • Pyspark - 多列聚合

    我有如下数据 文件名 babynames csv year name percent sex 1880 John 0 081541 boy 1880 William 0 080511 boy 1880 James 0 050057 boy
  • 如何使用wait\notify处理器?

    我正在运行 nifi 实例 1 2 0 我只是尝试使用 Wait Notify 处理器并参考以下内容http ijokarumawak github io nifi 2017 02 02 nifi notify batch why merg
  • Go符文类型解释

    我在 Go 中找到了符文类型 并且有一个简单的问题但值得解释一下 我发现它是int32的别名 目的是区分数字和字符值 http golang org pkg builtin rune http golang org pkg builtin
  • 如何使用 Moq 模拟会话对象集合

    我在用shanselmann 的 MvcMockHelper http www hanselman com blog ASPNETMVCSessionAtMix08TDDAndMvcMockHelpers aspx我正在使用 Moq 来模拟
  • Mysql 使用Where 进行选择,如果where 条件不存在则默认

    我有表 Product 和 ProductDetails 在 ProductDetails 中 我有包含多种语言的产品描述的行 按 lang 列区分 并非每个产品都有每种语言的描述 如何进行选择以选择指定语言的描述 通过Where prod
  • 如何根据用户输入的值创建验证范围?

    我想在单元格 A1 中创建一个验证范围 此验证允许用户输入从 1 到 x 的值 而 x 指的是用户在 B1 中输入的值 例如 如果用户在 B1 中输入值100 那么我们只能在单元格 A1 中输入1到100 我想知道如何在 C 中做到这一点
  • 访问 Angular Material 表中的输入字段

    几天来我一直在尝试从角度材质表内的输入字段获取数据 我基本上是用来自 API 的值填充表格 但是每当我们没有获得任何日期时 在我的情况下 课程没有设置预定日期 我会插入一个文本框 其中应显示该值这样用户就可以为该特定课程设置日期 Like
  • Orange Hrm 3.1-向选项卡添加新的菜单标题

    我是 symfony 框架的新手 我使用的是 Orangehrm 3 1 1 我在第二级选项卡中添加了一个新的菜单标题 但我不知道如何导航到特定的 href 链接 请帮我完成步骤 这是我通过数据库添加菜单项的方法 要在 Orangehrm
  • 如何在 Android CalendarView 上仅显示特定月份?

    我想在 CardView 上显示特定月份without下一个和上一个箭头用于导航日历 如果我想显示 2010 年 2 月 用户必须只能看到 2010 年 2 月 他们无法查看下个月或上个月 我跟着this https stackoverfl
  • 通过回溯分割字符串

    我正在尝试编写一个代码 将无空格的字符串分割成有意义的单词 但是当我给出像 arealways 这样的句子时 它返回 a real ways 而我想要的是 are 总是 我的字典包含所有这些词 我怎样才能编写一个不断回溯直到找到最佳匹配的代
  • 在R中绘制图形G=(V,E)

    我想通过 ggplot 或一些 R 内置函数在 R 中绘制标准 G V E 图 我有一个包含顶点坐标的数据框 gt V x y 1 589 3438 6422 883 2 8762 6921 7789 147 3 7973 0883 455
  • 样式显示在 Firefox、Opera、Safari 中不起作用 -(IE7 可以)

    我有绝对的定位div我想在用户单击链接时显示 这onclick链接的调用一个 js 函数 该函数将 div 的显示设置为阻止 也尝试过 inline table cell inline table ETC 这在 IE7 中效果很好 但在我尝
  • 语法高亮显示:Eclipse 如何做到如此快?

    我用 Java 为 Android 开发了一个语法荧光笔 它运行良好 但问题是处理大文件时速度可能会很慢 所以我想知道像 Eclipse 和 Gedit Ubuntu 这样的源代码编辑器如何快速突出显示您刚刚编写的内容 例如 如果您在编写
  • 任何人都知道用 *[class] 标记一个类的目的是什么

    今天我收到了一位客户发来的文件 该文件是电子邮件模板 在移动版本的 css 中 所有类规范均以 class 开头 e g class centertext somespec 0 有人知道将其添加到课程中的目的是什么吗 thanks 有一个雅
  • Base64 编码:非法 Base64 字符 3c

    我正在尝试将 xml 格式的数据解码为字节base64我遇到了问题 我的方法是在java中 它需要一个String数据并将其转换为bytes就像下面这样 String data string of data in xml format by
  • 将 Common Lisp 代码移植到 Clojure

    将 Common Lisp 应用程序移植到 Clojure 有多实用 更具体地说 Common Lisp 中存在哪些 Clojure 中不存在的功能 需要重写 有一个clojure org 上的列表 http clojure org lis
  • Go中如何进行除法运算

    我正在尝试用 Go 进行简单的除法 fmt Println 3 10 这会打印 0 而不是 0 3 这有点奇怪 有人可以分享一下这背后的原因是什么吗 我想在 Go 中执行不同的算术运算 Thanks 二元运算的操作数3 10是无类型常量 规