Тернарный оператор

Почему вывод следующего кода 9,0, а не 9? Если троичный оператор - это не что иное, как краткая форма ветви if-else, то почему java-компилятор продвигает int в double?

public class Ternary
  {
public static void main(String args[])
     {
    int a = 5;
    System.out.println("Value is - " + ((a < 5) ? 9.9 : 9));
     }
  }

Ответы на вопрос(5)

Ваш ответ на вопрос