A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 仰望星空的猪 中级黑马   /  2015-11-16 17:49  /  899 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一  运算符
1 运算符及分类
         运算符是特定的算术或者逻辑符号。
         1)按功能分类
         算术运算符、关系运算符、逻辑运算符和按位运算符。
         2)按操作数的个数分类
         单目运算符、双目运算符和三目运算符。
2 运算符的优先级
         运算符的优先级分15等级,1级最高,15级最低。
         表达式中,优先级高的的先于低的运算,优先级相同的时候,按照运算符的结合性运算。
3 运算符的结合性
    左结合:多个同级优先级的运算符,从左向右运算。比如 算数运算符。
    右结合:与左结合相反,比如赋值运算符。
4 表达式
      表达式:将同类型的数据(常量,变量和函数等)用运算符按照一定规则连接起来的式子。表达式一定有返回值。
      表达式后加分号,构成表达式语句。
         1)表达式分类
        算术表达式、关系表达式和逻辑表达式。
5 常用运算符
         1) 算数运算符(左结合):+ - * / %
         操作数为int型时,结果取整,如果有一个为实数类型,结果为双精度实数。
         m/n 取余的时候结构正负性取决于 m。
         2)赋值运算符(右结合)  =
         作用:把等号右侧的值赋值给左侧的变量。
              变量=值(或表达式);
         注意:等号左侧一定是变量,不能是表达式。
         3) 复合赋值运算符  += ……
         先运算后赋值。
         a + = 3  作用和  a=a+3;作用一样
         4) 自增自减运算符    i++; i--;++i;--i;
         前缀表达式  ++i; --I; i++;作用和 i=i+1;一样
         先让变量i自增自减,之后用自增自减之后的i值作为表达式的值
         后缀表达式  i++; i--;
         先用i值作为表达式的值,之后i的值再自增自减
         5) sizeof运算符)
         作用:给出操作数的存储大小。单位(字节)
         用法: sizeof(数据类型/常量/变量/结构体)
         注意:sizeof不是函数,编译时进行
         6) 逗号运算符
         作用:把两个表达式连接到一起,形成逗号表达式。
         求值过程:分别求每个表达式的值,以最后的表达式的值作为整个表达式的值。
         例  Int  a=4,b=6,c=7;
         Int  result =(a+1,b+1,c+1);逐个求值  最后把c+1的值赋值给result。
         逗号表达式不注重求值的结果,注重求值过程中哪些变量的值发生了变化。
         7) 关系运算符(左结合)> 、<、>=、<=、==、!=
         所有的数值都有真假性,非0即真,只有0为假。
         关系运算符的返回值只有0和1.
         8)  逻辑运算符 (或)||、&&(与)、(非)!
         或(左结合):两个表达式只要有一个真值,整个表达式的值就为真。
                 短路或:前一个表达式的值为真,后面表达式就不进行判断了
                   例
                     int x=y=1;
                    Int result= ++x || ++y;
                   此时 x值为2  y值为1 result的值为1(真)。
         与(左结合):两个表达式的值都为真,整个表达式的值才为真。
                    短路与:前一个表达式的值为假,后面表达式就不进行判断了
               例  int x=1,y=2;
                    Intresult = x>y &&  x++ > y++;
                    此时x值为1,y值为2  result值为0(假)。
      
         非(右结合):非真即假,非假即真。
         9) 三目运算符(右结合)  ? :
         条件表达式? 表达式1:表达式2
         如果条件表达式的值为真,表达式1的值为整个表达式的值。
         如果条件表达式的值为假,表达式2的值为整个表达式的值。
         注意:? 和:是成对出现。
         例  取a和b中较大值赋值给result。
                   int a=5,b=6      
                  int result = a>b? a:b;
                  取a、b和c中较大值赋值给result。
                int a=5,b=6,c=7;
                   nt result=a>b?a:b>c?b:c

1 个回复

倒序浏览
学习下,很不错的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马