假设我有两个字符串:
"centre"
和
"formatted"
我的要求是在Java中,程序将比较两个数字,这里像e(1次),t(1次)匹配。因此,代码将返回匹配的百分比。我该怎么做??
创建哈希映射,将第一个单词的所有字符放入此映射,值为零。之后,在第二个单词中迭代字符,如果此字符包含在映射中,则增加此字符的映射值。
Map<Character, Integer> map = new HashMap<>();
for(char c: word1.toCharArray()) {
map.put(c, 0);
}
for(char c: word2.toCharArray()) {
Integer count = map.get(c);
if(count != null) {
count++;
map.put(c, count);
}
}
for(Map.Entry<Character, Integer> entry: map.entrySet()) {
System.out.println(entry.getKey() + " " + entry.getValue() + " times");
}