题意
找出字符串中第一个只出现一次的字符,返回下标
思路
第一次遍历,用map计数
第二次找计数值等于1的
知识
map计数代码:
map.put(str.charAt(i),map.getOrDefault(str.charAt(i),0)+1);
String 转换char
str.charAt(i)
import java.util.*;
public class Solution {
public int FirstNotRepeatingChar(String str) {
Map<Character,Integer>map=new HashMap<Character,Integer>();
int len=str.length();
for (int i=0;i<len;i++){
map.put(str.charAt(i),map.getOrDefault(str.charAt(i),0)+1);
}
for (int i=0;i<len;i++){
if(map.get(str.charAt(i))==1){
return i;
}
}
return -1;
}
}