java - 将 Character[] 的范围转换为 String

标签 java arrays string

我有数组:['a','b','c','d']

我想获取数组的某个范围,例如 [0,2] 并将其设为字符串。结果将是 "abc"

这个解决方案确实有效:

private static String convertPartArrayToString(char[] array, int startIndex, int endIndex) {
    char[] dest = new char[endIndex - startIndex + 1];
    System.arraycopy( array, startIndex, dest, 0, endIndex - startIndex + 1 );
    return new String(dest);
}

但是有没有比复制数组更快的方法呢?

最佳答案

String has a constructor它采用 char 数组、startcount

数组仍将(防御性地)复制,否则可变状态将逃逸,您将不再拥有不可变的 String

关于java - 将 Character[] 的范围转换为 String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33807497/

相关文章:

Java 字符串到 SHA1

java - 在 Java 中将国家/地区代码转换为时区

java - 从 wsdl 生成 java 类

java - 使用 python 中的 java 库(Java 库的 Python 包装器)

java - 在android中使用单行对象结构检索JSON

TCL 中的类 C 数组

python - 如何用单个斜杠替换目录中的多个正斜杠?

c++ - 如何在 C++ 中将字符串数组转换为字符串类型,如将每个元素连接成一个字符串,并在字符串上使用子字符串?

php - 过滤数组以使用php生成菜单树

c - 解析域名