使用trim()和length()的Java字符串操作查询

时间:2014-05-13 08:24:04

标签: java string trim

public class X {

    public static void main(String[] args) {

        String s1=" abc xyz ";
        System.out.println(s1.length());
        s1.trim();
        System.out.println(s1.length());
        System.out.println(s1.trim().length());
    }
}

O / P:

9
9
7

请向我解释为什么s1.trim().length()是7而不是9,因为s1仍将指向旧字符串,即“abc xyz”?

3 个答案:

答案 0 :(得分:2)

s1=s1.trim(); // trim() returns the "trimmed" String. You have to set it back to the reference

答案 1 :(得分:1)

s1.trim();会返回修剪过的字符串,因此请在某个变量中捕获以修改它。

在你的情况下它保持原样s1。因此,当您致电s1.length()时,它会提供原始s1的长度。

如果您想修改它,请尝试s1=s1.trim();

答案 2 :(得分:0)

修剪返回新字符串而不是修改它。