The following statements,
String string = \"string\";
string = string +((char)65) + 5;
System.out.println(string);
Produce the output <
Case 1
string = string +((char)65) + 5;
everything is treated as String but in second case
Sequence of operation performed:
string +((char)65 = stringAstringA + 5 = stringA5Case 2
string += ((char)65) + 5;
first right hand side is calculated means first operation will be like ((char)65) + 5, So result of ((char)65) + 5 is 70 and after that += operation.
Sequence of operation performed:
(char)65 + 5 = 70string + 70 = string70Lets see 1 more example
String string = "string";
string += ((char)65) + 5 + "A";
System.out.println(string);
Output string70A
Reason Same first right hand side is calculated and sequesce of opertion performed is
(char)65 + 5 = 7070 + "A" = 70Astring + 70A = string70A