Sie nutzen können Android java.util.Collections
Klasse, die Sie mit diesem zu helfen. Insbesondere disjoint
wird nützlich sein:
Gibt zurück, ob die angegebenen Sammlungen keine Elemente gemeinsam haben.
Hier ist ein Codebeispiel, mit dem Sie beginnen können.
in Ihrer Tätigkeit oder wo auch immer Sie überprüfen, ob Ihre Ergebnisse ein Wort enthalten, die Sie suchen:
String[] results = {"dog", "cat"};
String[] wordsWeAreLookingFor = {"foo", "dog"};
boolean foundWordInResults = this.checkIfArrayContainsAnyStringsInAnotherArray(results, wordsWeAreLookingFor);
Log.d("MyActivity", "foundWordInResults:" + foundWordInResults);
Auch in Ihrer derselben Klasse, oder vielleicht eine Utility-Klasse:
private boolean checkIfArrayContainsAnyStringsInAnotherArray(String[] results, String[] wordsWeAreLookingFor) {
List<String> resultsList = Arrays.asList(results);
List<String> wordsWeAreLookingForList = Arrays.asList(wordsWeAreLookingFor);
return !Collections.disjoint(resultsList, wordsWeAreLookingForList);
}
Beachten Sie, dass dieses spezielle Codebeispiel in foundWordInResults
True enthalten wird, da "Dog" in results
und wordsWeAreLookingFor
ist.
die größere Frage zu beantworten, können Sie uns sagen. Warum hast du eine Liste von Wörtern und warum willst du nach 4-5 verschiedenen suchen? – Blundell
Was meinst du mehr Begriffe für den Parameter? Wie würden Sie nach einem ganzen Satz suchen oder was? – jpm
@jpom er bedeutet 'if (Arrays.asList (Ergebnisse) .contains ("Wort") || Arrays.asList (Ergebnisse) .contains ("Wort2") || Arrays.asList (Ergebnisse) .contains ("Wort3")) ' – Blundell