Java: sum of two integers being printed as concatenation of the two

前端 未结 10 2054
忘了有多久
忘了有多久 2020-12-03 19:41

Consider this code:

int x = 17;
int y = 013;
System.out.println(\"x+y = \" + x + y);

When I run this code I get the output 1711. Can anybod

10条回答
  •  孤城傲影
    2020-12-03 19:59

    Numbers prefixed with 0 are octal. 13 Octal is 11 decimal.

    The x + y call treats both paramters as strings, so you are combining the string "17" and "11".

提交回复
热议问题