Kotlin的Float,Int等是否已针对JVM中的内置类型进行了优化?

真实

我是Kotlin的新手,并且AFAICT的语法仅支持Int,Float等的对象版本,而没有对应的Java int和float原语。但是,如果可能的话,编译器或JVM是否优化为使用原始类型?我担心如果我在从游戏主循环调用的函数中使用局部变量,如果JVM每次必须创建一个对象而不是使用原始类型,都可能导致GC停顿。

s1m0nw1

引用文档

其中一些类型可以具有特殊的内部表示形式-例如,数字,字符和布尔值可以在运行时表示为原始值-但对用户而言,它们看起来像普通的类。在本节中,我们描述Kotlin中使用的基本类型:数字,字符,布尔值,数组和字符串。

因此,是的,编译器确实以在运行时使用JVM原语类型的方式进行了优化当然有一些例外:

在Java平台上,除非我们需要可为空的数字引用(例如Int?)或涉及泛型,否则数字实际上是作为JVM基本类型存储的。在后一种情况下,数字用方框括起来。

源文档中也有一个提示,例如Int

表示一个32位有符号整数。在JVM上,此类型的非空值表示为原始类型int的值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否对JavaScript引擎尾部调用(TCO)进行了优化?

如何知道jtextarea中是否进行了任何更改?

Java编译器是否针对不同的语言环境进行了翻译?

如何找出JVM对我的代码进行了哪些优化?

是否针对C标准进行了有条件的移动优化?

如何确定Swift是否使用优化进行了编译

针对App Store中的iPhone 6信息文本进行了优化

微观优化,是否已通过现代浏览器进行了优化?

是否对克隆语句进行了优化?

python中的datetime差异针对夜间进行了调整

我可以在PC(x86,x64)平台上使用Tensorflow lite或Tensorflow mobile吗?如果可以的话,是否已针对此平台进行了推理优化?

Excel –以升序返回唯一值的数量,已针对100,000多种情况进行了优化

Node.js:异步函数中是否对尾部调用进行了优化?

检查客户是否对Woocommerce中的产品进行了评论

确保React状态已针对游戏循环进行了更新

如何检查我的应用程序是否已针对Android进行了电池优化配置?

是否针对默认的相等运算符进行了C ++ 20功能测试?

Visual Studio是否针对超线程微处理器进行了优化?

是否对if(0)和if(1)语句进行了优化?

Ubuntu是否针对多核CPU进行了优化?

针对循环python进行了优化

是否仅对Azure表存储分区键查询进行了优化?

苹果是否已删除“针对iPhone 6和iPhone 6 Plus进行了优化”?

Ubuntu是否已针对KRACK攻击进行了修补?

在XML文件中具有所有参数是否进行了优化?

OpenCV是否在调试模式下进行了优化?

Saxon XSLT 处理器是否针对将隧道参数设置为其当前值进行了优化?

数组是否在 jOOQ 和 PostgreSQL 中进行了优化?

SoX 中的 noiseprof 是否对声音进行了平均测量?