• 中文
    • English
  • 注册
  • 查看作者
  • 《算法第四版》课后练习题1.2.5答案

    习题1.1.5

    以下这段代码会打印出什么?

    String s = "Hello World";
    s.toUpperCase();
    s.substring(6, 11);
    StdOut.println(s);

    要点解析

    习题1.1.4中,我们已经说过,String类的每一个看起来会修改String类值的方法,实际上都是创建了一个全新的对象,所以最后s的值并没有变化。

    参考答案

    “Hello World”。 String对象是不可变的—所有字符串方法都会返回一个新的String对象 (但它们不会改变参数对象的值)。这段代码忽略了返回的对象并直接打印了原字符串。要打印出” World”,请用s=s.toUpperCase()和s=s.substring(6,11)。

    public class Five {
        public static void main(String[] args) {
            String s = "Hello World";
            s.toUpperCase();
            s.substring(6, 11);
            StdOut.println(s);
            s=s.toUpperCase();
            StdOut.println(s);
            s=s.substring(6,11);
            StdOut.println(s);
        }
    }
    
    输出:
    Hello World
    HELLO WORLD
    WORLD

  • 0
  • 0
  • 0
  • 2.4k
  • 请登录之后再进行评论

    登录
    单栏布局 侧栏位置: