Каким будет результат компиляции и выполнения следующей программы?

public class Test {
    public static void main(String[] args) {
        byte a = 3;
        short b = 4;
        compute(a, b);
    }

    public static void compute(short x, short y) {
        System.out.println("Short: " + (x + y) + (x + y));
    }
}
Explanation
"Short: " + (x + y) + (x + y) состоит из двух опреаторов +, которые левоассоциативны, то есть выражение эквивалентно (("Short: " + (x + y)) + (x + y)). Когда одним из аргументов + является строка, JVM выполняет конкатенацию строк. См. JLS 15.18.1

Follow CodeGalaxy

Mobile Beta

Get it on Google Play
Send Feedback
Keep exploring
Java quizzes
Cosmo
Sign Up Now
or Subscribe for future quizzes