String и null на собеседовании по Java
На собеседовании (экзамене) по основам языка Java вам могут задать такой вопрос: что выведет программа ниже?
package ru.upread.string.test; public class TestString { public static void main(String[] args) { String str1 = null; str1 = str1 + " UpRead"; System.out.println(str1); } }Ответ
null UpReadОбъяснение ответа
- Изначально, строка str1 инициализируется null
- На следующем шаге на линии 8 происходит конкатенация строк с помощью оператора “+”
- Итак, теперь будет интересно посмотреть, какой будет точный вывод
- Немало экзаменуемых считают, что программа выведет только UpRead, без null
- Но на печать после конкатенации выводится "null UpRead"
- Дело в том, что здесь мы работаем со ссылками, а если ссылка равна null, то она преобразуется в строку "null".
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.