黑马程序员技术交流社区

标题: 在获得两个字符串中最大子串的代码有点不明白 [打印本页]

作者: 帅的惊动党中央    时间: 2015-5-21 11:58
标题: 在获得两个字符串中最大子串的代码有点不明白
毕老师的基础视频中,string字符串部分,在获得两个字符串中最大子串的代码有点不明白  ,下面代码标红的部分是什么意思
public static String getMaxSubstring(String str1,String str2){
        for(int x=0;x<str2.length();x++){
            for(int y=0,z=str2.length()-x;z!=str2.length();y++,z++){
                String temp = str2.substring(y, z);
                if(str1.contains(temp))
                    return temp;
            }
        }
        return "";
    }   



作者: LoveMyself    时间: 2015-5-21 12:55
    String temp = str2.substring(y, z);  这句代码的意思是:截取字符串str2 中从y处至z处的子字符串,如果y=0,z=str2.length()的情况下,得到的就不是str2的子字符串了,而是str2的本身了
作者: fenglinluomu    时间: 2015-5-21 13:18
这样理解,截取y到z这么长,用y=0开始截取。然后y和z往右挪,到什么时候停呢?自然是z到str2串的结尾处时。尾角标时length()-1,所以到lengt()停。




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