соответствует: проверяет, соответствует ли полная введенная строка значению, представленному в строковом объекте.
equalsIgnoreCase. Игнорируя случай, он проверяет, соответствует ли введенная строка значению, присутствующему в строковом объекте.
equals: чувствителен к регистру и проверяет, соответствует ли введенная строка значению, представленному в строковом объекте.
Это то, что я знаю о методах, присутствующих в классе String.
Есть ли другие отличия (не хватает ли каких-либо ценных различий)?
Если нет различий, то почему метод can not matches можно удалить из класса String, так как функциональность, которую он создает, может быть достигнута с использованием других вышеупомянутых методов соответственно.