博主的AC情况:
呜呜呜,太低了呀~~~~
博主用的是HashMap方法,还有其他的方法大家可以试试哟~~
描述
找出字符串中第一个只出现一次的字符
输入描述:
输入几个非空字符串
输出描述:
输出第一个只出现一次的字符,如果不存在输出-1
示例1
输入:asdfasdfo
aabb
输出:o
-1
解题代码:
import java.util.HashMap;
import java.util.Scanner;
// 找出字符串中第一个只出现一次的字符
public class HJ59 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String n = sc.next();
String z = sc.next();
function(n);
function(z);
}
public static void function(String x){
HashMap<Character, Integer> hm = new HashMap<>();
for (int i = 0; i < x.length(); i++){
if (hm.containsKey(x.charAt(i))){
int value = hm.get(x.charAt(i));
hm.put(x.charAt(i), value+1);
}else {
hm.put(x.charAt(i), 1);
}
}
for (int j = 0; j < x.length(); j++){
if (hm.get(x.charAt(j)) == 1){
System.out.println(x.charAt(j));
return;
}
}
System.out.println("-1");
}
}