Сначала, чтобы удалить гипс, просто используйте substring
, делать конкатенацию строк в l oop не очень хорошая идея, давая String suff = suffix.substring(1)
Затем вы используете stuff.length
вместо word.length()
, что фактически дает
public static boolean isSuffix(String word, String suffix) {
String suff = suffix.substring(1);
for (int i = 0; i < suff.length(); i++) {
if (!(word.charAt(word.length() - 1 - i) == suff.charAt(suff.length() - 1 - i))) {
return false;
}
}
return true;
}
И на самом деле вы можете просто substring
из word
с одинаковой длиной суффикса и проверить, равны ли они
public static boolean isSuffix(String word, String suffix) {
String suff = suffix.substring(1);
String wordSuffix = word.substring(word.length() - suff.length());
return suff.equals(wordSuffix);
}
И даже лучше, используя .endsWith
, но это предполагает, что вы можете использовать встроенные методы
public static boolean isSuffix(String word, String suffix) {
return word.endsWith(suffix.substring(1));
}
Также этот код предполагает, что оба значения не равны NULL, и всегда есть дефис