(三)练习3:两个字符串中最大相同串 //--3. 两个字符串中最大相同子串 file:///C:/Users/ADMINI~1/AppData/Local/Temp/ksohtml/wpsF547.tmp.jpg /** * "qwerabcdtyuiop" * "xcabcdvbn" * 1. 既然是取最大子串,先看短的那个字符串是否在长的那个字符串中 * 如果存在,短的那个字符串就是最大子串 * 2. 如果不是,那么就将短的那个子串进行长度递减的方式取子串,再去长串中判断是否存在 * 如果存在就找到了, */ public static String getMaxString(String str1, String str2){ if(str1!=null && str2 !=null){ //获取大小串 String maxstr = str1.length()>str2.length()?str1:str2; String minstr = str1.length()<str2.length()?str1:str2; //用小串在大串中循环找 String okstr = minstr; for(int i=0;i<minstr.length();i++){ for(int j=0,k=minstr.length()-i;k<minstr.length()+1;j++,k++){ if(maxstr.contains(okstr)){ return okstr; } okstr = minstr.substring(j,k); } } return okstr; } return ""; } (四)练习4:去除字符串两端空白//--4. 去除字符串两端空白 public static String myTrim(String str){ int start = 0; int end = str.length(); while(start<=end && str.charAt(start)== ' '){ start++; } while(start<=end && str.charAt(end-1) == ' '){ end--; } return str.substring(start,end); }
|