我有一个字符,我需要一个字符串。我如何从一个转换到另一个?
当前回答
你可以使用Character.toString(char)。注意,这个方法只是返回一个对String.valueOf(char)的调用,这也是有效的。
正如其他人所注意到的,字符串连接也可以作为一种快捷方式:
String s = "" + 's';
但这可以归结为:
String s = new StringBuilder().append("").append('s').toString();
这是较低的效率,因为StringBuilder是由char[]支持的(由StringBuilder()过度分配到16),只有该数组才会被结果String防御性地复制。
String.valueOf(字符)通过将字符包装在单元素数组中并将其传递给包私有构造函数String(char[], boolean)来“进入后门”,这避免了数组复制。
其他回答
你可以使用Character.toString(char)。注意,这个方法只是返回一个对String.valueOf(char)的调用,这也是有效的。
正如其他人所注意到的,字符串连接也可以作为一种快捷方式:
String s = "" + 's';
但这可以归结为:
String s = new StringBuilder().append("").append('s').toString();
这是较低的效率,因为StringBuilder是由char[]支持的(由StringBuilder()过度分配到16),只有该数组才会被结果String防御性地复制。
String.valueOf(字符)通过将字符包装在单元素数组中并将其传递给包私有构造函数String(char[], boolean)来“进入后门”,这避免了数组复制。
char vIn = 'A';
String vOut = Character.toString(vIn);
对于这些类型的转换,我有一个名为https://www.converttypes.com/的站点 它帮助我快速获得我使用的大多数语言的转换代码。
试试这个:Character.toString(aChar)或这样:aChar + ""
以下是一些方法,排名不分先后:
char c = 'c';
String s = Character.toString(c); // Most efficient way
s = new Character(c).toString(); // Same as above except new Character objects needs to be garbage-collected
s = c + ""; // Least efficient and most memory-inefficient, but common amongst beginners because of its simplicity
s = String.valueOf(c); // Also quite common
s = String.format("%c", c); // Not common
Formatter formatter = new Formatter();
s = formatter.format("%c", c).toString(); // Same as above
formatter.close();
我正在将字符数组转换为字符串
Char[] CharArray={ 'A', 'B', 'C'};
String text = String.copyValueOf(CharArray);
推荐文章
- URL从Java中的类路径加载资源
- .toArray(new MyClass[0]) or .toArray(new MyClass[myList.size()])?
- Hibernate中不同的保存方法之间有什么区别?
- Java 8流和数组操作
- Java Regex捕获组
- 如何在Python中按字母顺序排序字符串中的字母
- Openssl不被视为内部或外部命令
- 如何添加自定义方法到Spring Data JPA
- 如何在Ubuntu中设置Java环境路径
- 无法执行dex:在Eclipse中超过GC开销限制
- 有人能解释一下JPA和Hibernate中的mappedBy吗?
- 是什么导致JNI调用变慢?
- Java中的&和&&有什么区别?
- 使用Java的Collections.singletonList()?
- python: SyntaxError: EOL扫描字符串文字