java - 如何比较两个不同字符串中的字符

标签 java string

假设我有“jfk”和“jfc”。我想遍历两个字符串并找出它们是否不同以及在哪里不同。我想看看这些字符串是否是字谜。 “新门”和“一个词”是字谜词。如果它不是字谜,我希望代码告诉我字符串有多少个字符不同。 jfk 和 jfc 相差 1。“macd”和“mebc”相差 2,并且它们不能是字谜词。如果两个字符串的长度不同,那么它们就不能是字谜词。

我尝试迭代字符串,但那就是我陷入困境的时候。我不知道如何同时迭代两个字符串并找出它们是否因某些字符而异。我只检查两个字符串的长度是否相同。

 static void isAnagram(List <String> s1, List <String> s2) {  
        if (s1.length() != s2.length()) {  
            System.out.println("Not anagrams");  
        } else {  
            for(int i = 0; i < s1.length(); i++) {
               for(int j = 0; j < s2.lenth(); j++) {//i know that iterating through both strings like this does not make sense but i am stuck.
        }```

最佳答案

将数组转换为字符数组。然后按字母顺序对数组进行排序,然后逐个字符进行比较。

关于java - 如何比较两个不同字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57367396/

相关文章:

javascript - 如何修复 for 循环在 JavaScript 中无法在字符串数组中获取结果

python - 获取每个字符出现的次数

java - JCIFS 可以与 Jersey 一起使用吗?

java - JTextField 和 keyListener java swing

java - 初始化值到构造函数

string - 如何在 Perl 中的字符串中包含新行?

javascript - 如何获取字符串中两位数字的值

c++ - string.find() 在使用 ==-1 时返回 true,而在使用 <0 时返回 false

java - Camel 是否可以捕获 netty 异常?

java - 如何摆脱 java swing 中 JPanel 中的额外填充