使用ar.toArray(new String[ar.size()])
Android studio 3.2.1时,警告数组大小已预置,建议使用空数组
有两种方式可以将集合转换为数组:使用预置大小的数组(如c.toArray(
Stringc.size()或使用空数组(如c.toArray(新String) )。在较早的Java版本中,建议使用预置大小的数组,因为创建适当大小的数组所必需的反射调用相当慢。然而,由于OpenJDK 6的后期更新,此调用被内化,使得空数组版本的性能与预置大小的版本相同,有时甚至更好。此外,传递预置大小的数组对于并发或同步的集合是危险的,因为如果集合在操作期间同时收缩,则size和toArray调用之间可能会发生数据竞争,这可能会导致数组末尾出现额外的空值。这种检查允许遵循统一的风格:使用空数组(在现代Java中是推荐的)或使用预置大小的数组(在较早的Java版本或不基于热点的JVM中可能会更快)。
这是适用于Android还是只适用于java?
使用预先确定大小的数组(在旧的
版本或基于非HotSpot的JVM中,这可能会更快)。
因为我认为Android不是热点,它的虚拟机是Dalvik,现在它是艺术
https://stackoverflow.com/questions/53284214
复制相似问题