问题:在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。
解题思路:遍历字符串,使用indexOf()判断当首次出现的位置是当前位置,且后面没有再出现这个字符,则返回字符。
indexOf(int ch, int fromIndex):是指返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
class Solution {
public char firstUniqChar(String s) {
for (int i = 0; i < s.length(); i++) {
//首次出现的位置是当前位置,且后面没有再出现这个字符
if(s.indexOf(s.charAt(i))==i&&s.indexOf(s.charAt(i),i+1)==-1)
return s.charAt(i);
}
return ' ';
}
}