您的位置:首页 > 编程语言 > Java开发

JAVA两个字符串截取相同的最长子字符串

2016-05-08 22:21 351 查看
题目:

Java中字符串,比较两个不同的字符串,取出其中相同的子串

String a ="abcdef";

String b ="fgbcdemk";

System.out.println("Max String is ="+SubString.getMaxSubString(a, b));

比较如下,思路:

1、根据长短,赋予两个字符串

2、截取子串,从一个变量开头,一个变量从结尾开始,到中间相遇后停止

3、截取子串后,在另一个串中进行比较

4、最大子串赋予返回变量

public static String getMaxSubString(String str1,String str2){

String maxStr ="";

String str = (str1.length()>str2.length())?str1:str2;

String key = str.equals(str1)?str2:str1;

for(int i=0;i<key.length();i++){

for(int j=key.length();j>i && j>0;j--){

String temp = key.substring(i, j);

if(str.indexOf(temp)!=-1 && maxStr.length()<temp.length()){

maxStr = temp;

}

}

}

return maxStr;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: