在String.toCharArray Java中包含空格

时间:2014-01-12 00:37:32

标签: java arrays

你可以在.toCharArray中包含/解释空格..

现在它跳过空格..

    char[] first = first_string.toCharArray();

for (int x = 0; x < first.length; x++) {
        char first_letter = first[x];
 }

first_letter不包含空格..?

2 个答案:

答案 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()

直接引用:“新分配的字符数组,其长度为此字符串的长度,其内容初始化为包含此字符串表示的字符序列。”