zoukankan      html  css  js  c++  java
  • 运算符的优先级

    在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。

    优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。

    下面是运算符的优先级表格:

    优先级运算符说明结合性
    1 [].() 字段访问、数组索引、函数调用和表达式分组 从左向右
    2 ++ -- -~!delete new typeof void 一元运算符、返回数据类型、对象创建、未定
    义的值
    从右向左
    3 *、/、% 相乘、相除、求余数 从左向右
    4 +、- 相加、相减、字符串串联 从左向右
    5 <<、>>、>>> 左位移、右位移、无符号右移 从左向右
    6 <、<=、>、>=、instanceof 小于、小于或等于、大于、大于或等于、是否
    为特定类的实例
    从左向右
    7 ==、!=、===、!== 相等、不相等、全等,不全等 从左向右
    8 & 按位“与” 从左向右
    9 ^ 按位“异或” 从左向右
    10 | 按位“或” 从左向右
    11 && 短路与(逻辑“与”) 从左向右
    12 || 短路或(逻辑“或”) 从左向右
    13 ?: 条件运算符 从右向左
    14 =、+=、-=、*=、/=、%=、&=、|=、^=、<、<=、>、>=、>>= 混合赋值运算符 从右向左
    15 , 多个计算 按优先级计算,然后从右向左

    如果实在不清楚的的话可以将运算符里面的运算条件用()进行分组和数学上的用法是一样的便可以进行运算!

  • 相关阅读:
    HDU 4370 0 or 1 (最短路)
    POJ 2449 Remmarguts' Date (K短路 A*算法)
    HDU 5984 Pocky ( 2016 CCPC 青岛 C)
    [leetcode-733-Flood Fill]
    [leetcode-746-Min Cost Climbing Stairs]
    OpenCV学习5-----使用Mat合并多张图像
    人体姿态的相似性评价基于OpenCV实现最近邻分类KNN K-Nearest Neighbors
    OpenCV学习4-----K-Nearest Neighbors(KNN)demo
    [leetcode-728-Self Dividing Numbers]
    [leetcode-724-Find Pivot Index]
  • 原文地址:https://www.cnblogs.com/niuyaomin/p/11794141.html
Copyright © 2011-2022 走看看