在java中,当将带有空格的字符数组转换为字符串时,如何删除该字符串中的空格?

在java中,当将带有空格的字符数组转换为字符串时,如何删除该字符串中的空格?,java,Java,replaceAll(“\\s”和“)不起作用您的代码对我来说很好,请参阅 String output = new String(encryptText); output = output.replaceAll("\\s", ""); return output; 无论如何,您可以从以下位置使用: 您可以使用非正则表达式版本替换来执行此任务: output = StringUtils.trimAllWhitespace(output); 使用String.replaceAll(“,”)或者,

replaceAll(“\\s”和“)不起作用

您的代码对我来说很好,请参阅

String output = new String(encryptText);
output = output.replaceAll("\\s", "");
return output;
无论如何,您可以从以下位置使用:


您可以使用非正则表达式版本替换来执行此任务:

output = StringUtils.trimAllWhitespace(output);

使用
String.replaceAll(“,”)
或者,如果您想在不使用lib调用的情况下自己执行此操作,请使用此选项

output = output.replace(" ", "");

我遇到了同样的问题,然后我搜索了很多,发现它不是一个空格字符,而是一个从字符数组转换成字符串的空值。这为我解决了问题-

        String encryptedString = "The quick brown fox ";
        char[] charArray = encryptedString.toCharArray();
        char [] copy = new char[charArray.length];
        int counter = 0;
        for (char c : charArray)
        {
            if(c != ' ')
            {
                copy[counter] = c;
                counter++;
            }
        }
        char[] result = Arrays.copyOf(copy, counter);
        System.out.println(new String(result));

您的代码似乎很好。它应该会起作用。我会检查encryptText的外观您能共享输入字符串吗?因为str.replaceAll(“\\s”和“);应该有用。您也可以尝试str.replaceAll(“,”);您应该添加您得到的错误或一个示例,说明为什么您发布的解决方案不起作用,或者您的问题似乎与此问题重复:据我所知,此函数不是来自JDK。它是spring附带的?它说typejava.lang的trimAllWhitespace(String)方法没有定义,它不包含一个名为StringUtils的类。有几个第三方lib可以,比如apachecommons-Lang或Spring框架。为了使用它,您需要在项目类路径中使用相关的jar并导入正确的类。@AlekseiBulgak是的,您的权利,对不起,gues,我忘了提到它在spring框架中的部分。我更新了我的回答我们不得不说这个解决方案只适用于“纯”空白字符。它不捕获“特殊”空格字符,如tab(\t)。相反,基于java.util.regex.Pattern:replaceAll(“\\s”,”)的解决方案适用于每个空白字符:[\t\n\x0B\f\r]
        String encryptedString = "The quick brown fox ";
        char[] charArray = encryptedString.toCharArray();
        char [] copy = new char[charArray.length];
        int counter = 0;
        for (char c : charArray)
        {
            if(c != ' ')
            {
                copy[counter] = c;
                counter++;
            }
        }
        char[] result = Arrays.copyOf(copy, counter);
        System.out.println(new String(result));
output.replaceAll(String.valueOf((char) 0), "");