How to Compare Two Strings in Java?

Use `str1.equals(str2)` for exact content comparison

Use `str1.equalsIgnoreCase(str2)` for case-insensitive comparison

Use `str1.compareTo(str2)` for lexicographic comparison

Use `str1.compareToIgnoreCase(str2)` for case-insensitive lexicographic comparison

Use `Objects.equals(str1, str2)` for null-safe comparison

Use `str1 == str2` only to compare references, not string content

Use `str1.contentEquals(str2)` to compare with `StringBuilder` or `StringBuffer`

Use `Arrays.equals(str1.toCharArray(), str2.toCharArray())` to compare character arrays

Use `str1.regionMatches(…)` to compare specific parts of strings

Use `Comparator` when sorting or custom comparison logic is needed

Suggested for You

Trending Today