统计一对 Java 字符串中的匹配字符数
为了找出两个 Java 字符串中匹配字符的个数,首先要创建这两个字符串的字符数组,使比较变得简单。接下来将每个唯一字符放入哈希映射中。
将另一个字符串的每个字符与已创建的哈希映射进行比较,看看它是否存在,如果存在,则将该字符放入另一个哈希映射中,这是为了防止出现重复项。最后,获取此新创建的目标哈希映射的大小,它等于两个给定字符串中匹配字符数的个数。
范例
import java.util.HashMap; public class MatchingCharacters { public static void main(String[] args) { String str1 = "abcccdef"; String str2 = "dfgterf"; char[] arr = str1.toCharArray(); char[] arr2 = str2.toCharArray(); HashMap<Character,Integer> hMap = new HashMap<>(); HashMap<Character,Integer> hMap2 = new HashMap<>(); for(int i = 0 ; i < arr.length ; i++) { if(!hMap.containsKey(arr[i])) { hMap.put(arr[i],1); } } for(int i = 0 ;i <arr2.length ;i++) { if(hMap.containsKey(arr2[i])) { hMap2.put(arr2[i],1); } } System.out.println("Number of matching characters in a pair of Java string is : " + hMap2.size()); } }
输出
Number of matching characters in a pair of Java string is : 3
广告