«ExplicitlyInternment» (Решение)
Ответ
True
True
False
TrueОбъяснение
Первые две строчки содержат True, т.к. для выражений x == y и x == z будет вызвана перегрузка оператора == для строк, а строки совпадают. В последних двух строчках будет вызвана перегрузка оператора == для объектов, которая сравнит объекты по ссылке. Строка "AB" является заинтернированной и хранится в специальной таблице памяти. Переменная x указывает на интернированное значение, т.к. определена с помощью литерала. Переменная z указывает на это же значение, т.к. определена с помощью метода string.Intern. А переменная y будет указывать на другую область памяти, т.к. была определена через StringBuilder, который при вызове метода ToString() не учитывает интернированные значения.
Last updated
Was this helpful?