Nachdem ich einige andere ähnliche Fragen gelesen hatte, stellte ich fest, dass Sie eine switch-Anweisung nicht verwenden können, um nach mehr als einer.contains-Aufgabe zu suchen, die zu unterschiedlichen Ergebnissen führen. Ich möchte nicht ständig if(string.contains("")
für eine einzelne Saite wiederholen. Wie kann ich sonst die Menge an.contain-Anweisungen minimieren oder gibt es tatsächlich eine Möglichkeit, einen Schalter zu implementieren?
Lösung des Problems
Verwenden der for-Schleife zum Durchlaufen words
zum Archivieren mehrerer .contains
Prüfungen.
Erstellen Sie zunächst eine Klasse, die Ihre Zeichenfolgeneingabe validiert.
public class StringValidator {
String[] words = new String[]{"apple", "banana", "orange"};
public boolean isMatchAll(String input) {
for (String word: words) {
if (!input.contains(word)) {
return false;
}
}
return true;
}
}
Rufen Sie dann StringValidator.isMatchAll
auf, um zu überprüfen, ob Ihre Zeichenfolgeneingabe mit allen Wörtern übereinstimmt
StringValidator stringValidator = new StringValidator();
String input = "I like apple, banana and orange.";
boolean isMatch = stringValidator.isMatchAll(input); // true
Keine Kommentare:
Kommentar veröffentlichen