Java 如何将字符转换为字符串?

我有一个char,我需要一个String。如何从一个转换为另一个?

回答:

好问题。我有以下五种 6种方法可以做到这一点。

// #1

String stringValueOf = String.valueOf('c'); // most efficient

// #2

String stringValueOfCharArray = String.valueOf(new char[]{x});

// #3

String characterToString = Character.toString('c');

// #4

String characterObjectToString = new Character('c').toString();

// #5

// Although this method seems very simple,

// this is less efficient because the concatenation

// expands to new StringBuilder().append(x).append("").toString();

String concatBlankString = 'c' + "";

// #6

String fromCharArray = new String(new char[]{x});

注意:Character.toString(char)返回String.valueOf(char)。因此有效地两者是相同的。

String.valueOf(char[] value)调用new String(char[] value),这又设置了valuechar数组。

public String(char value[]) {

this.value = Arrays.copyOf(value, value.length);

}

另一方面,String.valueOf(char value)调用以下程序包私有构造函数。

String(char[] value, boolean share) {

// assert share : "unshared not supported";

this.value = value;

}

从源代码String.java中的Java 8的源代码

因此String.valueOf(char)似乎是最有效的方法,在这两个存储器和速度方面,用于转换char到String。

以上是 Java 如何将字符转换为字符串? 的全部内容, 来源链接: utcz.com/qa/410533.html

回到顶部