为了找到两个Java字符串中匹配字符的数量,方法是首先创建两个字符串的字符数组,使比较变得简单,然后将每个唯一字符放入Hash映射中。
将其他字符串的每个字符与创建的哈希映射进行比较,以防万一(如果存在的话)将该字符放入其他哈希映射中以防止重复。最后获取此新创建的目标哈希映射的大小等于两个给定字符串中匹配字符的数量计数。
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