将字符串数组从某个参数连接到一个字符串中?

时间:2016-12-29 11:41:56

标签: java arrays string

这是我的String数组,包含以下内容:

"消息" "播放" "如何" "是" "你"

我想加入"如何" "是" "你" String []的一部分,我目前正在做以下事情:

$string = 'Apple, Orange, Lemone';

$arr = explode(', ', $string);

$assocArr = array_change_key_case(
  array_combine(array_values($arr), $arr)
);

所以我的问题是,有更好/更有效的方法吗?

2 个答案:

答案 0 :(得分:1)

是的,有一种更好的方法,每次迭代该数组时,都会创建新的String对象(因为Strings are immutable),但是这个是一个短字符串,因此效率损失不大,仍尝试使用StringBuilder代替

StringBuilder msg = new StringBuilder();

for (int i = 2; i < args.length; i++)
{
    msg.append(args[i] + " ");
}
Util.messagePlayer(player, msg.toString);

有关完整的详细信息,请StringBuilder vs String concatenation in toString() in Java

答案 1 :(得分:0)

String对象在Java中是不可变的,因此每次连接两个字符串时,都会创建一个新的Object,这很昂贵。

相反,您可以使用StringBuilder

有关如何使用它的更多信息,请在此处详细说明: Correct way to use StringBuilder