开发者社区 问答 正文

将字符串数组转换为Java中的字符串

我想要将字符串数组转换为字符串的Java代码。

展开
收起
保持可爱mmm 2020-01-16 15:53:42 518 分享 版权
1 条回答
写回答
取消 提交回答
  • 如果您只想要数组的“调试样式”转储:

    String str = Arrays.toString(arr); 或者,为了获得更多控制权(在Java 8之前):

    StringBuilder builder = new StringBuilder(); for(String s : arr) { builder.append(s); } String str = builder.toString(); (Java 8及更高版本):

    String str = String.join(",", arr); 如果您是从Android角度出发:

    String str = TextUtils.join(",", arr); 您可以根据需要在字符串之间使用哪些字符(如有)来修改以上内容。

    您可能会看到与Java 8之前的代码几乎相同的代码,但是使用StringBuffer- StringBuilder是一个较新的类,该类不是线程安全的,但是由于不需要不必要的同步,因此在单个线程中具有更好的性能。简而言之,您最好StringBuilder在99%的情况下使用-从功能上来说,两者是相同的。

    请勿使用字符串,而只需使用+ =附加字符串即可,如此处显示的一些答案所示。这会使GC穿过屋顶,因为您要创建和丢弃的数组对象数与字符串对象一样多。对于小型阵列,您可能不会真正注意到差异,但是对于大型阵列,速度可能会慢几个数量级。

    问题来源于stack overflow

    2020-01-16 15:53:55
    赞同 展开评论