在我的应用程序中,我需要找到一种更快的方法来加载大数组Integer
and Float
变量。什么大道
直接使用 Java 代码创建数组 - 这不起作用,因为我的应用程序使用的数组非常大,有 200 000+ 浮点值,这会导致java code too large
错误,我找不到任何解决方法。
尝试使用以下命令在项目中导入这些数组xml
这也不起作用,因为文件大小变得非常大,我什至无法构建。
到目前为止有效的事情,我已经添加了txt
文件在assets
文件夹,使用读取它们InputStream
,将它们解析为浮点数/整数并动态创建数组,但这太慢了。
我拥有这些大数组的原因是,因为我的项目使用 Vuforia 来显示 3D 模型,它需要将它们表示为浮点/整数数组(顶点、文本坐标、法线、索引),但加载 12 个模型需要太多时间。
我很想获得一些建议/建议如何加快加载过程。
提前致谢!
我还没有对此进行基准测试,但(可能)是最快的simple读取大量整数和浮点值的方法是使用DataInputStream
及其各种readXxx()
方法。
如果数据是同构的,那么您可能可以使用以下方法获得更快的传输速度FileChannel
, ByteBuffer
和(说)DoubleBuffer
。该方法描述如下:“以java快速方式写入/读取浮点数组 https://stackoverflow.com/questions/22249483/write-read-float-array-in-java-fast-way“。(感谢@greenapps ...)但是,如果数据是异构的,即不同原始类型的混合,那么要使其发挥作用将很困难。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)