package sorttest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** */ /** * * @author alex * @msg 用于反转字符进行截取最大字符子串 */ public class reverse ... { public String getend(String a, String dt) ...{ String b = ""; String bb = ""; String str = ""; String sss = ""; String max = ""; int j; for (int m = 0; m < dt.length(); m++) ...{ for (j = m; j <= dt.length(); j++) ...{ b = dt.substring(m, j); System.out.println(b); if (a.contains(b) && b.length()>1 ) ...{ sss += b + "/"; } } } System.out.println(sss); if (sss.length()<1) ...{ char sa = a.charAt(0); Character chsa = new Character(sa); max = chsa.toString(); } else ...{ String[] mdm = sss.split("/"); //System.out.println("直****" + mdm.length); max = mdm[0]; for (int i = 1; i < mdm.length; i++) ...{ if (max.length() < mdm[i].length()) ...{ max = mdm[i]; } } } return max; } //用于反转字符串 public String Turnto(String str) ...{ String turnstr = ""; for (int i = str.length() - 1; i > -1; i--) ...{ turnstr += str.charAt(i); } return turnstr; } public static void main(String[] args) throws IOException ...{ reverse h = new reverse(); System.out.println("please input string :"); while(true)...{ BufferedReader br=new BufferedReader(new InputStreamReader(System.in )); String b=br.readLine(); String dt = h.Turnto(b); String mat = h.getend(b, dt); System.out.println("最大子串为:" + mat); if(br.readLine().equals("exit"))...{ System.exit(1); } } }}