Java 在不使用修剪方法的情况下,消除字符串正文中的任何额外空格

Java 在不使用修剪方法的情况下,消除字符串正文中的任何额外空格,java,eclipse,Java,Eclipse,我对java相当陌生,我正试图为我的comp类做一个作业,但这一直困扰着我。任务要求我: 编写一个方法trim(String s),该方法返回参数s的一个版本,并删除所有额外的空格(包括前导零和尾随零,以及每个字符串主体中的任何额外空格)。 它指定不应使用String类的trim方法。 此外,我们只允许使用字符串类的CharAt、equals、length和substring方法 public static String trim(String s) { String newString

我对java相当陌生,我正试图为我的comp类做一个作业,但这一直困扰着我。任务要求我:

编写一个方法trim(String s),该方法返回参数s的一个版本,并删除所有额外的空格(包括前导零和尾随零,以及每个字符串主体中的任何额外空格)。 它指定不应使用String类的trim方法。 此外,我们只允许使用字符串类的CharAt、equals、length和substring方法

public static String trim(String s) {
    String newString = "";
    for(int i = 0;  i < s.length(); i++) {
        if(s.charAt(i) != ' ') {
            newString += Character.toString(s.charAt(i));
        }
    }
    return newString;
}
提示1:试着(在你的头脑中,在一张纸上)计算出你想要删除字符的精确数学条件

  • 请注意,字符串开头和结尾的空格条件可能有所不同
提示2:考虑问题的2个部分:

  • 处理一般情况
  • 处理“边缘”案件;i、 e.一般情况的例外情况

简单的方法是有两个循环。一个从开始检查,一个从结束检查。当你发现一个字符不是空格时,退出循环。“额外”空格是什么意思?它是不带空格的共享文本,但可能。
input: trim("    coding  is    fun   ")
output: "coding is fun"