正如文档中所说,kotlin 1.2 中没有 kotlin.Math 类

     2023-04-15     86

关键词:

【中文标题】正如文档中所说,kotlin 1.2 中没有 kotlin.Math 类【英文标题】:No kotlin.Math class in kotlin 1.2 as it is said in the documentation 【发布时间】:2019-01-03 01:12:45 【问题描述】:

我最近一直在处理 kotlin 多平台,我完全理解开发的本质。最初,我有自己预期的数学类(在一个公共模块中),并且在 JS 和 JVM 环境中有实际的类。

由于我喜欢阅读文档,我发现从 kotlin 1.2 开始,Math 库已添加到标准库中。这给我带来了麻烦,因为我正在使用 kotlin 1.2.51,并且在我的公共模块和我的任何平台特定模块中尝试从 kotlin.Math 访问该类时遇到错误。

我没有得到什么?如何访问我的公共模块中的 kotlin.Math 类?

【问题讨论】:

【参考方案1】:

Math-class 已弃用,deprecated-message 包含:

改用 kotlin.math 包中的***函数。

(另见https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-math/index.html)

所以不知何故,@mTak 的答案是正确的,即使没有提到,你应该使用kotlin.math.*-import 而不是你的Math-class。

或者,您也可以导入kotlin.math.max等,具体取决于您实际需要的功能。

我想得越多:我不知道 Kotlin 的 jvm-variant 中是否有一个 Math-class(找不到任何关于它的东西),所以在一个多平台项目中 @987654327 @-class-access 可能应该总是失败。

【讨论】:

什么意思没有提到 你写了“像这样导入它:import kotlin.math.*,但那里没有Math-class。它缺少Math-class 应该替换为方法的信息- 直接在kotlin.math中访问,JS和JVM都可以使用。 你对所有额外信息都是正确的,但由于没有数学课,我建议唯一存在的其他选择 没关系(我没有对你投反对票)。但是你知道那里没有Math-class。 OP可能不知道。您可以添加该信息,否则您的 "import it" 可能会被误解为:您的课程在该包中。 无论如何我认为这不会被误解,因为这是 Kotlin 提供的【参考方案2】:

像这样导入它:import kotlin.math.*

【讨论】:

有什么问题需要注意吗? 如果它不存在我怎么能导入它? 这不是数学。它是kotlin.math。如果您使用的是 Kotlin 1.2.51 它就在那里 在 kotlin 通用模块中可用吗?如果是这样,那么我的 kotlin 标准库可能有问题 你用的是哪个IDE?【参考方案3】:

在 Kotlin 标准库中,数学函数在 kotlin.math 包中作为***函数提供。

因此,您需要导入该包,然后才能使用其中的函数,例如sinsqrt 等。

import kotlin.math.*

val sqrt2 = sqrt(2.0)

您也可以一一导入函数,例如import kotlin.math.sqrt 甚至称他们为完全合格的val result = kotlin.math.sqrt(2.0)

【讨论】:

kotlin.math 在通用模块中不可用 应该是。检查对 kotlin-stdlib-common 库的依赖关系。如果它在那里并且您仍然看不到kotlin.math,请在此处报告问题:kotl.in/issue @andylamax 如果您在公共模块中编写上面给出的代码示例,您是否有任何错误报告?【参考方案4】:

过了一会儿(我什至觉得自己很愚蠢)。发现kotlin常用模块中的kotlin.math库已经添加了。唯一的区别是,它没有“数学”。就像我平时习惯的那样。

所以,Math.round(x: Float) 只是 round(x: Float) Math.sin(x: Float) 只是 sin(x: Float)

【讨论】:

如何在没有 Kotlin 源代码的情况下在 Espresso 中启动活动?

】如何在没有Kotlin源代码的情况下在Espresso中启动活动?【英文标题】:HowtolaunchanactivityinEspressowithoutsourcecodeinKotlin?【发布时间】:2021-02-2418:57:31【问题描述】:我在网上看到很多关于Espresso的教程。所有教程都依赖于应用程序... 查看详情

如何从 Firestore 中读取使用 Kotlin 中的 hashMap 添加的文档?

】如何从Firestore中读取使用Kotlin中的hashMap添加的文档?【英文标题】:HowtoreaddocumentsfromFirestorethatwasaddedusinghashMapinKotlin?【发布时间】:2021-12-2903:46:23【问题描述】:我已经设法将hashMap的数据添加到Firestore中,如下所示,但是如... 查看详情

GetCommandLine() 中缺少进程名称

...问题。它通常返回可执行文件名,后跟一个空格和参数。正如文档所说,第一个令牌可能没有图像的完整路径和等等等等。直到现在我在使用lpApplicationName不为NULL的CreateProcess 查看详情

如何从 gradle 编译中排除 kotlin 文件

...ests/**\'我想用kotlin做同样的事情。试图在配置kotlin的官方文档中找到一些关于此的文档,但没有成功。我所期望并 查看详情

QTranslator 没有在 PyQt5 中持久安装

...i18n函数相关的问题,特别是所有与QTranslator相关的代码。正如文档所说,我正在使用QTranslator对象来加载已编译的.qm文件,如下所示:tr_objec 查看详情

如何在 Picasso 上启用 TLS v 1.2 以在 Kotlin 中使用 https 加载图像

】如何在Picasso上启用TLSv1.2以在Kotlin中使用https加载图像【英文标题】:HowcanienableTLSv1.2onPicassoforloadingimageswithhttpsinKotlin【发布时间】:2020-11-0818:40:32【问题描述】:根据我对堆栈的研究,我已经在Kotlin中实现了一个解决方案我创... 查看详情

Sencha Touch 中 doLayout() 和 doComponentLayout() 的区别?

...)inSenchaTouch?【发布时间】:2011-04-1401:45:10【问题描述】:正如标题所说,在SenchaTouch中调用doLayout()和doComponentLayout()有什么区别?我尝试查看文档,但没有清楚 查看详情

Knockout JS - 在没有 ko.mapping 的情况下观察数组的任何属性中的突变

】KnockoutJS-在没有ko.mapping的情况下观察数组的任何属性中的突变【英文标题】:KnockoutJS-observingamutationinanypropertyofanarraywithoutko.mapping【发布时间】:2018-09-2323:02:15【问题描述】:在我的应用程序中,我必须只显示一个长列表中评... 查看详情

从两个列表中获取不常见的元素 - KOTLIN

】从两个列表中获取不常见的元素-KOTLIN【英文标题】:Getuncommonelementsfromtwolist-KOTLIN【发布时间】:2018-07-0800:44:30【问题描述】:我有两个相同模型类(STUDENT)的列表,示例学生对象结构如下,"_id":"5a66d78690429a1d897a91ed","division":"... 查看详情

OpenLayers Proxyhost 无法正常工作

...workingproperly【发布时间】:2012-12-0509:53:14【问题描述】:正如http://trac.osgeo.org/openlayers/wiki/FrequentlyAskedQuestions#ProxyHost中所说,我确实将proxy.cgi文件放在了文档所说的服务器中,并且在转到“http 查看详情

文档中的固定快捷方式最低 API 级别与代码不兼容

...patibleWithCode【发布时间】:2018-12-1409:32:25【问题描述】:正如文档所说:如果您的应用面向Android7.1(API级别25)或更高版本,您可以定义应用中特定操作的快捷方式。固定的快捷方式是在运行时发布并且还使用ShortcutManager 查看详情

kotlin基础4.companionobject(伴生对象),更新中(代码片段)

第一步,写kotlin代码:classMainActivity:AppCompatActivity()companionobjectconstvalREQUEST_CODE_TAKE_PHOTO=101constvalREQUEST_CODE_PICK_PHOTO=102...第二步,转成Java代码:tools->Ko 查看详情

从 row.clicked 事件中获取行元素

...tstrapVue中的表格,我试图在单击一行时显示行详细信息。正如文档所说,我使用了row-clicked事件,但我没有找到任何使用toggleDetails方法的行详细信息。所以我什至不知道如何打开它以及toggleDetails来自哪 查看详情

如何导入上面目录中的 Python 类?

...kg2importmod根据Python文档:在包层次结构中,使用两个点,正如importstatement文档所说 查看详情

在 .net Graph SDK 中, Range().Clear() 给出了编译错误,并且不像文档中所说的那样工作

】在.netGraphSDK中,Range().Clear()给出了编译错误,并且不像文档中所说的那样工作【英文标题】:Inthe.netGraphSDK,Range().Clear()givescompilationerroranddoesn\'tworkastoldindocumentation【发布时间】:2021-04-0518:33:38【问题描述】:我正在使用.netGraph... 查看详情

如何在查询中使用 $push 将数据插入子文档,而不是检索文档并将其保存回来

...时间】:2016-02-0407:39:29【问题描述】:编辑:这确实有效正如Mongoose-Subdocs:"Addingsubdocs"文档所说,我们可以使用push方法 查看详情

如何将改造回调响应中的回调从 java 转换为 Kotlin

...:我将我的所有项目从java转换为kotlin,并成功地纠正了文档中的所有错误。但我没有成功将java改造回调响应中的回调转换为kot 查看详情

Kotlin 没有从绑定的 viewModel 中获取数据

】Kotlin没有从绑定的viewModel中获取数据【英文标题】:KotlindoesntgetthedatafromthebindingviewModel【发布时间】:2021-10-0722:51:03【问题描述】:我正在尝试获取用户在自动完成视图中输入的数据,但我没有在viewModel中收到它。有xml文件,... 查看详情