2017-09-11 175 views
-5

我正在使用Java 8.假設我有兩個字符串a=helloworldb=howareyou分別。我想從字符串a中找出字符串b的匹配字符及其在b中的位置。在我的示例中,匹配字符是h,e,o, w, rr是字符串b中的第5個字符。我不想找到它是否是子字符串。我只想檢查一個字符串的字符是否存在於另一個字符串中。有沒有辦法做到這一點?以下是我的Java代碼。如何檢查一個字符串是否包含來自Java中另一個字符串的字符?

public class CharCheck { 
public static void main(String[] args) { 
    String a = "helloworld"; 
    String b = "howareyou"; 

    char st = containsAny(a, b); 

    System.out.println(st+", "); 
} 

private static char containsAny(String str1, String str2) { 
    if (str1 == null || str1.length() == 0 || str2 == null || str2.length() == 0) { 
     if (str1 == null || str1.length() == 0) { 
      return 'X'; 
     } 
    } 
    for (int i = 0; i < str1.length(); i++) { 
     char ch = str1.charAt(i); 
     for (int j = 0; j < str2.length(); j++) { 
      if (str2.charAt(i) == ch) { 
       return ch; 
      } 
     } 
    } 
    return 'X'; 
    } 
} 
+0

你有沒有嘗試過自己什麼? – marstran

+0

所以你基本上想要找到String1中的哪些字符?你有什麼嘗試? – AntonH

+0

@CedricMartens:錯誤的語言。這是Java,這個問題是關於Javascript的。 –

回答

1

我不會爲你實施解決方案,但我會給你pusedocode。

for each letter1 in String1 
    for each letter2 in String2 
      if letter1 is letter2 then print its position 

所以,你知道你需要一個嵌套循環和比較,如果你想要獨一無二的重複,但我會留下,其餘由你變得有點複雜

相關問題