Ich bin oft mit dieser Frage konfrontiert. Lassen Sie uns ein kurzes Beispiel sehen, ich habe diese einfache Methode: Es ruft die Position eines String
in einem String[]
.Java: Richtiger Weg eine Methode() sollte einen schlechten Ruf behandeln
public int getStringPosition(String s, String[] text) {
for (int i = 0; i < text.length; i++) {
if (text[i].equals(s)) {
return i;
}
}
return text.length;
}
Aber was ist, wenn der String nicht im Array ist? Hier wird die Größe des Arrays zurückgegeben (eine int
, die nicht von einer normalen Verwendung der Methode stammen könnte). Es könnte auch -1
zurückgeben. Ich wünschte, es würde null zurückgeben, aber das scheint nicht möglich zu sein.
Wie auch immer, diese Methode wird in der gleichen Klasse von einigen anderen Methoden verwendet. Meine Frage ist ziemlich allgemein, , wie man die Fälle behandelt, in denen du nicht zurückbringen kannst, was erwartet wird?
Throw Exceptions ... – Hackerdarshi
Und was sollte die Ausnahme tun? Wie warne ich den Benutzer der Methode und lasse ihn weiterhin den Fluss seines Programms fortsetzen? – Fitz
Trotz dessen, was @Hackerdarshi gesagt hat, die andere Möglichkeit, wie die 'String'-Methoden zum Beispiel funktionieren, könnte auch' -1' zurückgeben, wie zum Beispiel 'String # indexOf', wenn Sie primitive Typen zurückgeben. – SomeJavaGuy