【发布时间】:2017-09-11 21:07:58
【问题描述】:
我正在使用 Java 8。假设我分别有两个字符串 a=helloworld 和 b=howareyou。我想从字符串 a 中找出字符串 b 的匹配字符以及它们在 b 中的位置。在我的示例中,匹配的字符是 h,e,o,w,r 和 r 是字符串 b 中的第 5 个字符。我不想找到它是否是子字符串。我只想检查一个字符串的字符是否存在于另一个字符串中。有没有办法做到这一点?下面是我的 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';
}
}
【问题讨论】:
-
你自己有没有尝试过?
-
所以你基本上是想找出String2中的哪些字符包含在String1中?你试过什么?
-
@CedricMartens:语言错误。这是 Java,那个问题是关于 Javascript 的。
-
@HovercraftFullOfEels 我已经编辑了我的问题。请仔细阅读。我的问题与其他问题不同。
-
@CedricMartens 我的问题是关于
java语言而不是寻找子字符串。