public class TestStr2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入两个字符串:"); String str1 = sc.nextLine(); String str2 = sc.nextLine(); System.out.println(TestStr2.printMaxChild(str1,str2)); } public static String printMaxChild(String str1,String str2){ int flag = 0; String MaxStr = str1.length() > str2.length() ? str1 : str2; String MinStr = str1.length() > str2.length() ? str2 : str1; int minStrLen = MinStr.length(); String[] strs = new String[minStrLen]; for(int i = 0; i < minStrLen; i++){ for(int x = 0, y = minStrLen - i; y <= minStrLen; x++, y++){ String subStr = MinStr.substring(x,y); if(MaxStr.contains(subStr)){ return subStr; } } } return null; } }