Java 求两个字符串的最大字串
代码如下:
package com.liming.mytest01; public class Test01 { public static void main(String[] args) { //找出两个字符中的最大子串 def String str1 = "abcadefmngxyzadef"; String str2 = "xyzadefmnqabc"; //获取长度较短的字符串并调用获取字符串长度函数 if (str1.length() > str2.length()) { System.out.println("最大相同子字符串:" + MaxSubString(str2, str1)); } else { System.out.println("最大相同子字符串:" + MaxSubString(str1, str2)); } } public static String MaxSubString(String s1, String s2) { String temp = ""; //先从短字符串的长度开始,逐步递减长度,直到出现符合的字符串 for (int i = 0; i < s1.length(); i++) { for (int j = 0, k = s1.length() - i; k < s1.length(); j++, k++) { temp = s1.substring(j, k); if (s2.contains(temp)) { return temp; } } } return null; } }