classSolution{public int lengthOfLongestSubstring(String s){
int []hashmap =newint[256];//存放字符位置for(int i =0; i <128; i++){//初始化 -1
hashmap[i]=-1;}
int max =0;
int length = s.length();
int left =0;//左游标for(int i =0; i < length; i++){if(hashmap[s.charAt(i)]>= left){//如果当前字符的数组位置大于左游标位置,则出现了重复字符,将左游标移动至重复字符的上一次的位置的后一位
left = hashmap[s.charAt(i)]+1;}
hashmap[s.charAt(i)]= i;// 每次都更新字符对应的索引位置if(i - left +1> max)//记录子子串长度
max = i - left +1;}return max;}}