объединяющая строка и числа Java

Почему результат отличается в этих случаях?

int x=20,y=10;

System.out.println("printing: " + x + y);   == & GT;printing: 2010

System.out.println("printing: " + x * y);   == & GT;printing: 200

Почему не первый выход 30? Это связано с приоритетом оператора? Как сначала "печать" и х объединяются, а затем эта результирующая строка и у объединяются? Я прав?

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

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