黑马程序员技术交流社区

标题: 关于字符串截取问题 [打印本页]

作者: 403806022    时间: 2016-4-12 23:24
标题: 关于字符串截取问题
  String str = “abcdefg”;
  str.substring(0,2);
  System.out.println(str);
请问代码运行的结果为何是abcdefg而不是ab呢
作者: liuchenguangqnm    时间: 2016-4-12 23:36
这样写就行了:
class Test2 {
        public static void main(String args[]) {
                String str = "abcdefg";
                str = str.substring(0,2);
                System.out.println(str);
        }
}
原因是你还没有用新的变量记录substring()方法返回的字符串。
String类型的值长度是不可改变的,每一次对String进行处理都会生成新的字符串没所以必须用变量记录。
如果你还想学习功能更强大的string类型处理方法,可以查一下StringBuffer和StringBuilder




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2