在网上找了很多,发现实现都很复杂,后面自己又写了这个
public static String maxNoRepeatString(String txt){
int len=txt.length();
int i=0;
int j=1;
String son=null;
int max=0;
while(j<len){
int repeat=txt.indexOf(txt.charAt(j),i);
if(repeat>=i&&repeat<j){
if((j-i)>max) {
son = txt.substring(i, j );
max = j - i;
}
i=repeat+1;
}
j++;
}
if((j-i)>max)
son=txt.substring(i,j);
return son;
}