在 Java 中,如何将 String 转换为 char 或将 char 转换为 String?
Posted
技术标签:
【中文标题】在 Java 中,如何将 String 转换为 char 或将 char 转换为 String?【英文标题】:In Java how does one turn a String into a char or a char into a String? 【发布时间】:2011-01-26 14:51:11 【问题描述】:有没有办法将char
转换为String
或String
,其中一个字母转换为char
(例如如何将int
转换为double
和@987654327 @ 变成 int
)? (如果可以,请链接到相关文档)。
我如何才能找到我在文档中只是模糊地知道的类似内容?
【问题讨论】:
【参考方案1】:char firstLetter = someString.charAt(0);
String oneLetter = String.valueOf(someChar);
您可以通过识别可能涉及的类来查找文档。在这里,候选人是java.lang.String
和java.lang.Character
。
您应该首先熟悉:
java.lang
中的原始包装器
java.util
中的 Java 集合框架
它还有助于通过教程更慢地介绍 API。
Manipulating characters in a String【讨论】:
查看相关的 javadoc 文档【参考方案2】:String.valueOf('X')
将为您创建一个字符串"X"
"X".charAt(0)
会给你字符'X'
【讨论】:
【参考方案3】:正如没有人提到的,另一种从单个字符创建字符串的方法:
String s = Character.toString('X');
返回一个表示指定字符的字符串对象。结果是 长度为 1 的字符串,仅由指定的字符组成。
【讨论】:
【参考方案4】:String someString = "" + c;
char c = someString.charAt(0);
【讨论】:
"" + 'c'
使用自动装箱,不推荐使用,因为它先是 "" + Character.toString('c')
,然后是 "" + "c"
,然后是 "c"
。它会执行额外的"" + "c"
操作,如果使用太频繁会降低程序速度。【参考方案5】:
String g = "line";
//string to char
char c = g.charAt(0);
char[] c_arr = g.toCharArray();
//char to string
char[] charArray = 'a', 'b', 'c';
String str = String.valueOf(charArray);
//(or iterate the charArray and append each character to str -> str+=charArray[i])
//或 String s= new String(chararray);
【讨论】:
这不会向现有答案添加任何内容。 @Radiodef - 他们添加了toCharArray()
,这正是我想要的。当时没有其他答案提到它。【参考方案6】:
为了将字符串转换为字符
String str = "abcd";
char arr [] = new char[len]; // len is the length of the array
arr = str.toCharArray();
【讨论】:
你不必要地分配了一个长度为 'len' 的 char 数组,只是为了在下一行被覆盖【参考方案7】:我喜欢做这样的事情:
String oneLetter = "" + someChar;
【讨论】:
我非常不喜欢它,因为它没有传达意图。你不想做任何加法或连接,所以+
在这里不适合使用。以上是关于在 Java 中,如何将 String 转换为 char 或将 char 转换为 String?的主要内容,如果未能解决你的问题,请参考以下文章
在 Java 中,如何将 String 转换为 char 或将 char 转换为 String?