精华内容
下载资源
问答
  • PS:“+”和“-”既是一元运算符,也是二元运算符。首先我们看看下面这几道题的结果是什么:当 x='1'时, x+1;x-1;+x;-x;++x; typeof(x+1); typeof(x-1); typeof(+x); typeof(-x); typeof(++x); 的结果分别...
    PS:“+”和“-”既是一元运算符,也是二元运算符。

    首先我们看看下面这几道题的结果是什么:


    当 x='1'时, x+1;x-1;+x;-x;++x; typeof(x+1); typeof(x-1); typeof(+x); typeof(-x); typeof(++x); 的结果分别是多少? 答案: x+1 //'11' x-1 //0 +x //1 -x //-1 ++x //2 typeof(x+1) //'string' typeof(x-1) //'number' typeof(+x) //'number' typeof(-x) //'number' typeof(++x) //'number'

    一元加法(+)

    一元加法运算符把操作数转换为数字(或者NaN),并返回这个转换后的数字。如果操作数本身就是数字,则直接返回这个数字。

    +1    // => 1: 操作数本身就是数字,则直接返回这个数字
    +'1'  // => 1: 把字符串转换为数字
    +'-1' // => -1: 把字符串转换为数字

    一元减法(-)

    当“-”用做一元运算符时,它会根据需要把操作数转换为数字,然后改变运算结果的符号。

    -1   // => -1: 操作数本身就是数字,直接改变运算结果的符号
    -'1' // => -1: 把字符串转换为数字,再改变运算结果的符号
    -'-1'// => 1: 把字符串转换为数字,再改变运算结果的符号

    二元加法(+)

    二元加法运算符“+”可以对两个数字做加法,也可以做字符串连接操作。

    当两个操作数都是数字或都是字符串的时候,计算结果是显而易见的。然而对于其他情况来说,则要进行一些必要的类型转换,并且运算符的行为依赖于类型转换的结果。加号的转换规则优先考虑字符串连接,如果其中一个操作数是字符串或者转换为字符串的对象,另外一个操作数将会转换为字符串,加法将进行字符串的连接操作。如果两个操作数都不是类字符串(string-like)的, 两个操作数都将转换为数字(或者NaN),然后进行算术加法运算。

    这里有一些栗子:

    1 + 1        // => 2: 加法
    '1' + '1'    // => '11': 字符串连接
    '1' + 1      // => '11': 数字转换为字符串后进行字符串连接
    1 + {}       // => '1[object Object]': 对象转换为字符串后进行字符串连接
    true + true  // => 2: 布尔值转换为数字后做加法
    1 + null     // => 1: null转换为0后做加法
    1 + undefined// => NaN: undefined转换为NaN后做加法

    需要特别注意的是,当加号运算符和字符串和数字一起使用时,需要考虑加法的结合性的对运算顺序的影响。也就是说,运算结果是依赖于运算符的运算顺序的,比如:

    1 + 1 + '1';  // => '21'
    1 +(1 + '1'); // => '111'

    第一行没有圆括号,“+”运算符具有从左至右的结合性,因此两个数字首先进行加法计算,计算结果和字符串进行连接。在第二行中,圆括号改变了运算顺序:数字1和字符串连接,生成一个新字符串,然后数字1和这个新字符串再次连接,生成了最终结果。

    二元减法(-)

    当“-”用做二元运算符时,它会根据需要把操作数转换为数字,然后再进行减法运算。

    1-0    // => 1: 减法
    '1'-0  // => 1: 字符串转为数字后进行减法运算
    '1'-'0'// => 1: 字符串转为数字后进行减法运算

    递增(++)

    需要注意的是,“++”运算符从不进行字符串连接操作,它总是会将操作数转换为数字并增1。表达式++x并不总和x=x+1完全一样。

    var x='1';
    var y=x+1; // =>'11': 字符串连接
    var z=++x; //=> 2:字符串转为数字后增1

    总结:

    JavaScript中的某些运算符会做隐式的类型转换。一元运算符“+”,“-”,“++”,二元运算符“-”都会把操作数隐式的转换为数字,二元运算符“+”比较特殊,当有操作数是字符串,它将会把另外一个操作数转换为字符串。

    x + '' // 等价于String(x)
    +x     // 等价于Number(x)

     

    下面是我的公众号,欢迎大家关注,大家一起学习一起进步

     

     

    参考文章链接:https://www.javazhiyin.com/11742.html

    转载于:https://www.cnblogs.com/lxl0419/p/10953929.html

    展开全文
  • 一元运算符二元运算符

    千次阅读 2018-07-06 20:46:13
    运算符可以是一元、二元或三元的。 一元运算符有1个操作数。例如,递增运算符”++”...减法运算符”-“既是一元运算符又是二元运算符。对于减法运算符,如果只提供一个操作数,则该运算符会对操作数取反并返回结果...

    运算符可以是一元、二元或三元的。
    一元运算符有1个操作数。例如,递增运算符”++”就是一元运算符。
    二元运算符有2个操作数。例如,除法运算符”/”有2个操作数。
    三元运算符有3个操作数。例如,条件运算符”?:”具有3个操作数。
    运算符的行为还可能因所提供的操作数的数量而异。减法运算符”-“既是一元运算符又是二元运算符。对于减法运算符,如果只提供一个操作数,则该运算符会对操作数取反并返回结果;如果提供两个操作数,则减法运算符返回这两个操作数的差。
    1) 二元运算符
    Java的二元运算符有+(加)、-(减)、*(乘)、/(除)、%(取余数)。
    2) 一元运算符
    Java的一元运算符有++(自加)、–(自减)
    3) 三元运算符
    true?value1:value2;
    例: int a=0x10 , b=010 , max ;
    max=a>b ? a : b ;

    展开全文
  • 作用于一个运算对象的运算符是一元运算符,如取地址符&和解引用符*; 作用于两个运算对象的运算符是二元运算符,如相等运算符==和乘法运算符*。 转载于:https://www.cnblogs.com/archerzon/p/9623395.html...

    作用于一个运算对象的运算符是一元运算符,如取地址符&和解引用符*;

    作用于两个运算对象的运算符是二元运算符,如相等运算符==和乘法运算符*。

    转载于:https://www.cnblogs.com/archerzon/p/9623395.html

    展开全文
  • 等运算符,如a+b,要求有两个数据单元参加运算,它就是二元运算符;"?:"运算符要求三个运算单元,如(ab)?c:d,它就是三元运算符。1、一元运算符只对一个表达式执行操作,该表达式可以是数值数据类型类别中...

    运算符是一元、二元还是三元,要看它要求有几个数参加运算,比如"++"运算符,只需要一个数据单元参加运算,如++a,它就是一元运算符;而"+"、"-"等运算符,如a+b,要求有两个数据单元参加运算,它就是二元运算符;"?:"运算符要求三个运算单元,如(ab)?c:d,它就是三元运算符。

    1、一元运算符只对一个表达式执行操作,该表达式可以是数值数据类型类别中的任何一种数据类型。

    一些只需要一个操作数的运算符称为一元运算符(或单目运算符)。

    例:5 + 6 和 5++ ------在C语言中,5++是非法的。

    前者5 和 6为操作数+ 为运算符,但是 + 需要两个操作数,所以它不是一元运算符,而是二元运算符,而后者只需要一个操作数,所以 ++ 为一元运算符。

    一元运算符有:"sizeof",'+'——正号,'-'——负号,'!', '++', '--' , '~'——位非,返回数字的非。

    2、二元运算是由两个元素形成第三个元素的一种规则。例如数的加法及乘法;更一般地,由两个集合形成第三个集合的产生方法或构成规则称为二次运算。

    二元运算(Binary operation)作用于两个对象的运算。如任意二数相加或相乘而得另一数;任意二集合相交或相并而得另一集合;任意一个多行矩阵与一个多列矩阵相乘而得另一矩阵;任意二函数合成而为另一函数,以上加、乘、交、并,积及合成均属二元运算  。

    3、三元运算符是软件编程中的一个固定格式,语法是“条件表达式?表达式1:表达式2”。使用这个算法可以使调用数据时逐级筛选。

    格式

    如名字表示的三元运算符需要三个操作数。

    语法为:条件表达式?表达式1:表达式2。

    说明:问号前面的位置是判断的条件,判断结果为bool型,为true时调用表达式1,为false时调用表达式2。

    其逻辑为:“如果为条件成立或者满足则执行表达式1,否则执行第二个。”常用在设置默认值,例如某个值不一定存在,则判断这个值是否存在,不存在给默认值(表达式2)


    运算符是一元、二元还是三元,要看它要求有几个数参加运算!

    比如"++"运算符,只需要一个数据单元参加运算,如++a,它就是一元运算符;

    而"+"、"-"等运算符,如a+b,要求有两个数据单元参加运算,它就是二元运算符;当然了,"+"、"-"运算符也可以理解为一元运算符,比如int a =6; int b = 18; a =-b; //负数  a =+b;//正数 。这里的-b和+b只有一个数参加运算。

    " ?  :  "运算符要求三个运算单元,如(ab) ? c : d,它就是三元运算符。


    展开全文
  • 二元运算符将两个表达式合成一个稍复杂的表达式,换而言之,他们的操作数均是两个;JavaScript支持的一个三元运算符是条件判断运算符“?:”,它将三个表达式合并成为一个表达式。 一元运算符举例: var i=35; ...
  • 一元运算符: 序号 一元运算符 说明 1 i++ 给i加1 2 i-- 给i减1 3 ++i 给i加1 4 --i 给i减1 i++;/*例:int i=1;i++;//先将i的值1赋值给i,然后i再加1*/ i...
  • 我们一直在使用重载的运算符,这些运算符重载在c++语言本身中。例如,c++重载了加运算符(+)和减运算符(-)。这些运算符在整型运算、浮点型运算、指针运算等上下文中,执行的操作是不同的。 大多数c++运算符都可被...
  • Java语言支持如下运算符: 算术运算符:+,-,*,/,%,++,-- 赋值运算符:= 关系运算符:>,<,>=,<=,==,!=,instanceof 逻辑运算符:&&,||,! 位运算符:&,|,^,~,>>...
  • 这篇博客咱们说一下复合赋值运算符跟一元二元运算符,不过在说这些之前会先理一下之前忘记说的一点,“++”跟“--”,越是细节咱们越是重视一下。 1,“++”跟“--”: ........1),++ ,自加一,有前加和后加...
  • 以下是利用友元函数或成员函数重载二元运算符+、一元运算符++/--和操作符<< Test.h //Test.h #pragma once #include <iostream> using namespace std; class Test { public: T...
  • 运算符有一元运算符二元运算符及三元运算符。 一元运算符有1个操作数。例如,递增运算符"++“就是一元运算符二元运算符有2个操作数。例如,除法运算符”/“有2个操作数。 三元运算符有3个操作数。例如,条件...
  • 分数和整数相加1.8友元函数1.8.1 方式一:使用公开的访问接口1.8.2方式二:友元函数1.9成员函数、静态函数、友元函数特性1.10两个特殊的运算符1.11其他的二元运算符二、运算符重载(一元运算符)2.1 一元运算符2.2 ...
  • js一元运算符

    2021-04-26 22:26:58
    只有一个操作数的运算符就是一元运算符 ;两个操作数的运算符是二元运算符,由表达式组成:操作数、运算符 var num = 2; var num1 = 7; // 前置++ 先自身+1,再运算表达式 console.log(++num) // 先让num自身+1=3,...
  • 一元运算符

    2021-03-02 21:42:48
    一元运算符: 只有一个操作数 + - 自增 ++ 通过自增可以使变量在自身基础上+1 对于一个变量自增以后,原变量的值会立即+1 自增分为两种 前++(++a) 后++(a++) 无论先++还是后++,最终变量的结果都自增1 a++ 的值...
  • C#运算符的重载一元二元运算符

    千次阅读 2015-03-30 19:33:27
    一元运算符的重载:一元操作符只作用于一个对象那个,此时参数表为空,对象作为操作符的单操作数,需要注意的是类中的字段为public ,重载方法为static 二元运算符的重载:参数表中有一个参数,当前该对象作为...
  • 运算符 算术运算符:+,-,*,/,%,++,– 赋值运算符:= 关系运算符:>,<,>=,<=,***==***(等于),!=instanceof(不等于) ...(),||(或),!...二元运算符 package Operator; public clas

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,027
精华内容 6,010
关键字:

一元运算符与二元运算符