当前位置: 首页 > 面试题库 >

用Java连接两个String的最快方法是什么?

邓深
2023-03-14
问题内容

用Java连接两个String的最快方法是什么?

String ccyPair = ccy1 + ccy2;

我在中使用它cyPair作为键,HashMap并且在一个非常紧密的循环中调用它来检索值。

当我分析时,这就是瓶颈

java.lang.StringBuilder.append(StringBuilder.java:119)  
java.lang.StringBuilder.(StringBuilder.java:93)

问题答案:

这些例程出现在基准测试中的原因是因为这是编译器在幕后实施“ +”的方式。

如果您确实需要连接的字符串,则应让编译器以“
+”号表示神奇。如果你都需要对地图查找一个键,一键类控股与合适的两个字符串equals,并hashMap因为它避免了复制步骤的实现可能是一个好主意。



 类似资料:
  • 我正在通过API分页,并将请求保存到数据帧。 我一次可以收集100行,这个循环目前运行一个多小时。 我担心这是因为一旦我达到100000行以上,添加下一个100行就会变得非常低效。 这是我当前的代码: 为了尽可能提高效率,我在整个请求中只保留了3列。我还会删除100行中出现的任何重复项。

  • 问题内容: 目前,我正在使用类似: 我对这种方法不是很满意,因为它会创建大量数组(可以包含一本书)。 有没有更好的解决方案来迭代a的行? 问题答案: 您可以使用: 并使用方法:

  • 问题内容: 在JavaScript中串联N个对象数组的最有效方法是什么? 数组是可变的,结果可以存储在输入数组之一中。 问题答案: 如果要连接两个以上的数组,那么这样做是为了方便和可能的性能。 对于仅连接两个数组,可以使用接受多个包含要添加到数组中的元素的参数的事实来代替将一个数组中的元素添加到另一个数组的末尾而不产生新数组。使用它也可以代替它,但是这样做似乎没有性能优势。 在ECMAScript

  • 我有两个数据帧和包含IP地址,我正在尝试将IP地址映射到地理位置信息,如经度和纬度,它们是中的列。 我运行它作为一个火花提交作业,但操作花了很长时间,即使只有不到2500行。 我的代码: 有没有其他方法可以加入这两张桌子?还是我做错了?

  • 问题内容: 我正在阅读一堆用空格或换行符与标准隔开的整数。 用Java有没有更快的方法呢? 问题答案: 用Java有没有更快的方法呢? 是。扫描仪相当慢(至少根据我的经验)。 如果您不需要验证输入,建议您将流包装在BufferedInputStream中,并使用类似/的内容。 比较一下: 使用此代码读取 17兆字节 (4233600个数字) 我的机器花了 3.3秒 。而这个片段 花了 0.7秒 。