Ответ
Результат будет true.
Причина: В Java строковые литералы (значения в двойных кавычках) интернируются (interned) и помещаются в пул строк (String Pool). При создании второго идентичного литерала " " JVM возвращает ссылку на уже существующий объект из пула.
String s1 = " "; // Создается или находится строка в пуле
String s2 = " "; // Возвращается ссылка на ту же строку из пула
System.out.println(s1 == s2); // true, потому что s1 и s2 — одна ссылка
Важное замечание: Это поведение гарантировано только для литералов и строк, явно помещенных в пул методом intern(). Для сравнения содержимого строк всегда следует использовать метод equals().
System.out.println(s1.equals(s2)); // true, и это корректный способ сравнения