#273 Сравнение строк и String.intern()

Компании:
CloudX
Темы:
JavaОсновы JavaКод ревью

Что будет выведено на экран?

public class Main {
    public static final String CONST_S = "const";

    public static void main(String[] args) {
        String str1 = CONST_S;
        String str2 = CONST_S;
        String str3 = "abcdefg098";
        String str4 = new String(str3);
        String str5 = new String("abcdefg098");
        String str6 = str5.intern();

        System.out.println(str1 == str2 ? "1" : (str1.equals(str2) ? "-1" : ""));
        System.out.println(str1 == str3 ? "2" : (str1.equals(str3) ? "-2" : ""));
        System.out.println(str4 == str3 ? "3" : (str4.equals(str3) ? "-3" : ""));
        System.out.println(str5 == str3 ? "4" : (str5.equals(str3) ? "-4" : ""));
        System.out.println(str1 == str5 ? "5" : (str1.equals(str5) ? "-5" : ""));
        System.out.println(str1 == str6 ? "6" : (str1.equals(str6) ? "-6" : ""));
        System.out.println(str4 == str6 ? "7" : (str4.equals(str6) ? "-7" : ""));
        System.out.println(str3 == str6 ? "8" : (str3.equals(str6) ? "-8" : ""));
    }
}

Разбор вопроса

Ментор
Ответь как на реальном собеседовании. Я задам уточняющие вопросы, а затем сравню твой ответ с эталонным и покажу точность в %.
Войди, чтобы начать диалог Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти