你可以在.toCharArray中包含/解释空格..
现在它跳过空格..
char[] first = first_string.toCharArray();
for (int x = 0; x < first.length; x++) {
char first_letter = first[x];
}
first_letter不包含空格..?
答案 0 :(得分:3)
String.toCharArray()
不会删除或“跳过”空格。它提供了与字符串中完全相同的字符序列。
最可能的问题是(预期的)前导空格根本不在该字符串(first_string
)中。您可以通过临时添加以下行来检查:
System.err.println("first_string is '" + first_string + "'");
并查看输出。或者您可以使用调试器来设置断点并直接检查first_string
的值。
调试提示:
如果你的程序以一种你无法解释/理解的方式行为不端,那就质疑你的假设:
读取/重新读取javadoc以检查您使用的库方法是否实际执行了您认为/记住它们的操作。
检查相关变量是否具有您认为应具有的值。
并且...... 学习如何使用IDE的调试器,“如果您可以有效地使用调试器,那么您将节省大量时间。
答案 1 :(得分:0)
是的,它默认包含空格。例如,
公共类测试员{
public static void main (String[] args) {
String temp = "This is a sentence.";
char[] arr = temp.toCharArray();
for (char k : arr) {
System.out.print(k);
}
}
}
打印出“这是一个句子。”当对函数的作用有疑问时,你应该总是咨询Javadocs。看看这个:http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#toCharArray()
直接引用:“新分配的字符数组,其长度为此字符串的长度,其内容初始化为包含此字符串表示的字符序列。”