在不使用trim方法的情况下消除字符串体内的任何额外空格

时间:2018-03-15 22:22:19

标签: java eclipse

我对java很新,我正在尝试为我的comp课程完成作业,但它一直困扰着我。作业要求我:

编写方法trim(String s),返回参数s的一个版本,删除所有额外的空格(这包括前导零和尾随零,以及每个字符串体内的任何额外空格)。 它指定不应使用String类的trim方法。 另外,我们允许使用的String类的唯一方法是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;
}

这是我迄今为止所获得的,但它删除了所有空间,而不仅仅是额外的空间。我没有要求完全解决这个问题,就像我正在寻找某种暗示来帮助我一样。

编辑:预期结果的一个例子是:

input: trim("    coding  is    fun   ")
output: "coding is fun"

1 个答案:

答案 0 :(得分:0)

提示1:尝试(在你的头上,在一张纸上)计算你想要移除一个角色的精确数学条件。

  • 请注意在字符串开头和结尾的空格条件中可能存在差异。

提示2:考虑分两部分解决问题:

  • 处理一般情况
  • 处理&#34; edge&#34;例;即一般情况的例外情况