C++和Java运算符优先级表
1. C++ operator precedence
::Scope resolutionLeft-to-right++ --Suffix/postfix increment and decrement()Function call[]Array subscripting.Element selection by reference?>Element selection through pointer++ --Prefix increment and decrementRight-to-left+ ?Unary plus and minus! ~Logical NOT and bitwise NOT(type)Type cast*Indirection (dereference)&Address-ofsizeofSize-ofnew, new[]Dynamic memory allocationdelete, delete[]Dynamic memory deallocation.* ->*Pointer to memberLeft-to-right* / %Multiplication, division, and remainder+ ?Addition and subtraction<< >>Bitwise left shift and right shift< <=For relational operators < and ≤ respectively> >=For relational operators > and ≥ respectively== !=For relational = and ≠ respectively&Bitwise AND^Bitwise XOR (exclusive or)|Bitwise OR (inclusive or)&&Logical AND||Logical OR?:Ternary conditionalRight-to-left=Direct assignment (provided by default for C++ classes)+= ?=Assignment by sum and difference*= /= %=Assignment by product, quotient, and remainder<<= >>=Assignment by bitwise left shift and right shift&= ^= |=Assignment by bitwise AND, XOR, and ORthrowThrow operator (for exceptions),CommaLeft-to-right2. Java operator precedence
[ ]array indexleft()method call.member access 2++pre- or postfix incrementright--pre- or postfix decrement+ -unary plus, minus~bitwise NOT!boolean (logical) NOT(type)type castnewobject creation 3* / %multiplication, division, remainderleft 4+ -addition, substractionleft+string concatenation 5<<signed bit shift leftleft>>signed bit shift right>>>unsigned bit shift right 6< <=less than, less than or equal toleft> >=greater than, greater than or equal toinstanceofreference test 7==equal toleft!=not equal to 8&bitwise ANDleft&boolean (logical) AND 9^bitwise XORleft^boolean (logical) XOR 10|bitwise ORleft|boolean (logical) OR 11&&boolean (logical) ANDleft 12||boolean (logical) ORleft 13? :conditionalright 14=assignmentright*= /= += -= %=
<<= >>= >>>=
&= ^= |=combinated assignment (operation and assignment)
reference:
1. http://en.cppreference.com/w/cpp/language/operator_precedence
2. http://bmanolov.free.fr/javaoperators.php