English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной учебник Java

Java Управление потоком

Java Массивы

Java Ориентированность на объекты (I)

Java Ориентированность на объекты (II)

Java Ориентированность на объекты (III)

Обработка исключений Java

Java Списки (List)

Java Queue (очередь)

Java Map-сборники

Java Set-сборники

Java Вход/Выход (I/O)

Java Reader/Writer

Другие темы Java

Методы сравнения строк в программе Java

Java полная коллекция примеров

В этой программе вы узнаете, как сравнивать две строки в Java.

Пример 1: Сравнение двух строк

public class CompareStrings {
    public static void main(String[] args) {
        String style = "Жирный";
        String style2 = "Жирный";
        if(style == style2)
            System.out.println("Равно");
        else
            System.out.println("Не равно");
    {}
{}

При выполнении этого программы, вывод будет:

Равно

В этой программе у нас есть две строки style и style2. Мы сравниваем их только с помощью оператора равенства (==), который будет сравнивать значенияЖирныйСЖирныйСравнить и вывестиРавно.

Пример 2: Использование equals() для сравнения двух строк

public class CompareStrings {
    public static void main(String[] args) {
        String style = new String("Bold");
        String style2 = new String("Bold");
        if(style.equals(style2))
            System.out.println("Равно");
        else
            System.out.println("Не равно");
    {}
{}

При выполнении этого программы, вывод будет:

Равно

В上面的 программе у нас есть два стиля строк style и style2, они оба содержат такие жеЖирный.

Но мы используем конструктор String для создания строк. Чтобы сравнить эти строки в Java, нам нужно использовать метод equals() строки

Вы не должны использовать == (оператор равенства) для сравнения этих строк, так как они сравнивают ссылки на строки, то есть являются ли они одним и тем же объектом

С другой стороны, метод equals() сравнивает значения строк, а не сами объекты.

Если изменить программу на использование оператора равенства, то результат будет:Не равно, как показано в следующем примере программы.

Пример 3: Использование == для сравнения двух строковых объектов (не работает)

public class CompareStrings {
    public static void main(String[] args) {
        String style = new String("Bold");
        String style2 = new String("Bold");
        if(style == style2)
            System.out.println("Равно");
        else
            System.out.println("Не равно");
    {}
{}

При выполнении этого программы, вывод будет:

Не равно

Пример 4: сравнение двух строк различными способами

Это сравнение строк, которое может быть выполнено в Java.

public class CompareStrings {
    public static void main(String[] args) {
        String style = new String("Bold");
        String style2 = new String("Bold");
        boolean result = style.equals("Bold"); // true
        System.out.println(result);
        result = style2 == "Bold"; // false
        System.out.println(result);
        result = style == style2; // false
        System.out.println(result);
        result = "Bold" == "Bold"; // true
        System.out.println(result);
    {}
{}

При выполнении этого программы, вывод будет:

true
false
false
true

Java полная коллекция примеров