精华内容
下载资源
问答
  • Java的一元运算符似乎是通过C ++从C过来的。int result = +1;它似乎具有以下效果:如果它是包装器对象,则取消装箱其操作数如果它不是int或更宽的地址,则将其操作数提升为int稍微复杂化包含大量连续加号的邪恶...

    Java的一元加运算符似乎是通过C ++从C过来的。

    int result = +1;

    它似乎具有以下效果:

    如果它是包装器对象,则取消装箱其操作数

    如果它不是int或更宽的地址,则将其操作数提升为int

    稍微复杂化包含大量连续加号的邪恶表达式的解析

    在我看来,有更好/更清晰的方法来完成所有这些事情。

    在这样的SO问题中,关于C#中的对等运算符,有人说:"如果您感到有需要,那就可以重载了。"

    但是,在Java中,不能重载任何运算符。 那么,该一元加运算符是否仅因为存在于C ++中而存在于Java中?

    代码混淆竞赛... SCJP考试...

    对于C,也没有重载的类似问题:stackoverflow.com/questions/6637005/,类似于Java的类型提升。

    一元加号运算符的操作数类型为byte,char或short时,将自动转换为int。这称为一元数值提升,它使您可以执行以下操作:

    char c = 'c';

    int i = +c;

    当然,它的用途有限。但这确实有目的。请参阅规范,特别是第15.15.3节和第5.6.1节。

    对,但是在这种情况下是多余的。由于多数民众赞成在扩大转换范围,因此int i = c;将执行相同的操作。

    它在整体意义上不一定是多余的,因为它传达了意图。可能会合理地怀疑int i = c,"此代码的作者是否打算将c分配给int?"还有其他方法吗?当然,但这是传达意图的最短途径。

    好点子。我想在实践中,如果我想传达意图,我更有可能做int i = (int) c;,但是使用+肯定更短。

    @JohnFeminella"传达意图"?我真的不买,因为其他人阅读代码不会真正知道它为什么在那儿。从其他答案中可以看出,大多数人似乎对一元数值提升一无所知。就我个人而言,我一直认为这是一个禁忌症,纯粹出于美容目的。如果您希望数字升迁,那么(int) c会更清楚,因为它是普遍存在的,被广泛接受的模式。不过,+ 1是教我一些我不知道的东西。

    我同意(int) c更清晰。但是我没有说这是进行转换并传达意图的最清晰的方法。我说这是最短的。 :)

    但是int a = -1; b = +a是否会导致b = 1?

    @CpILL不,不是。

    我使用一元+启用复杂表达式中的垂直连贯。

    这是一元加号将如何处理Character变量的简短演示:

    private static void method(int i){

    System.out.println("int:" + i);

    }

    private static void method(char c){

    System.out.println("char:" + c);

    }

    public static void main(String[] args) {

    Character ch = 'X';

    method(ch);

    method(+ch);

    }

    运行该程序的输出为:

    char: X

    int: 88

    它是如何工作的:一元+或-将其操作数取消装箱(如果它是包装对象),然后将其操作数提升为int(如果尚未为int或更宽)。因此,正如我们所看到的,虽然第一次调用method将选择char重载(仅取消装箱),而第二次调用将选择int版本的method。由于应用了一元加号,类型为Character的变量ch将作为int参数传递到method中。

    我不知道,但是我怀疑它在那里与(显然是必需的)一元减运算符对称。

    如果Java中没有一元加号运算符,那么很有可能Id坐在这里的Stack Overflow抱怨它...

    这就是我一直认为的...

    许多其他语言都有一元加号。习惯将其包含进来,而一分钱捏制将其排除在外。在编译器中只有几行。

    Java的设计目标之一是(对于C / C ++开发人员)熟悉,因此,当涉及到此类操作员时,我敢肯定,他们将有充分的理由将其排除在外,而不是一个很好的理由。

    我的猜测是存在的,因为有时键入加号会使情况更清晰。您可能要强调一个事实,即某个数字是正数,而不是一些负数。

    同样,为了提供一个实际的使用示例,在世界上某些地区,正温度往往总是以加号为前缀。

    如果x为负,则+x也为负...

    一元运算符对Java执行以下操作:

    " +"一元加号运算符;表示正值(没有此数字,则为正)

    "-"一元减运算符;否定表达式

    ++增量运算符;将值增加1

    -递减运算符;将值减1

    !逻辑补运算符;反转布尔值

    资料来源:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/opsummary.html

    展开全文
  • JavaScript中的运算符根据其操作数的个数进行分类:一元运算符只对一个表达式执行操作,并产生一个新值;二元运算符将两个表达式合成一个稍复杂的表达式,换而言之,他们的操作数均是两个;JavaScript支持的一个三元...
    JavaScript中的运算符根据其操作数的个数进行分类:一元运算符只对一个表达式执行操作,并产生一个新值;二元运算符将两个表达式合成一个稍复杂的表达式,换而言之,他们的操作数均是两个;JavaScript支持的一个三元运算符是条件判断运算符“?:”,它将三个表达式合并成为一个表达式。
    一元运算符举例:
    var i=35;
    i=-i;

     

    表达式-i中“-”运算符就是一个一元运算符,是将操作数i求相反数。
    二元运算符举例:
    var i=6;
    i=4-9;
    表达式4-9中“-”运算符就是一个二元运算符,是将操作数4与操作数9相减。
    (1)对《JavaScript权威指南》P66JavaScript运算符进行分类。

    转载于:https://www.cnblogs.com/f6056/p/9437874.html

    展开全文
  • 一元运算符

    2020-12-18 20:21:56
    一元运算符:只需要一个运算符 正号(+),不会对数字产生任何影响 减号(-),可以对数字进行负号的取反 对于非Number类型的值,它会先将转换为Number,然后在进行运算,可以对一个其他的数据类型使用+,来将其...

    一元运算符:只需要一个运算符

    • 正号(+),不会对数字产生任何影响
    • 减号(-),可以对数字进行负号的取反

    对于非Number类型的值,它会先将转换为Number,然后在进行运算,可以对一个其他的数据类型使用+,来将其转换为Number,它的原理和Number()函数一样

    自增和自减也属于一元运算符
    自增++:

    • 通过自增可以使变量在自身的基础上增加1

    • 对于一个变量自增以后,原变量的值会立即自增1

    • 自增分为2种:后++(a++)和前++(++a),无论是a++还是++a,都会立即使原变量的值自增1,不同的是a++和++a的值不同,a++的值等于原变量的值(自增前的值)++a的值等于新值(自增后的值)
      在这里插入图片描述

    自减- -:

    • 通过自减可以使变量在自身的基础上减1
    • 自减分为2种:后- -(a- -)和前- -(- -a),无论是a- -还是- -a,都会立即使原变量的值自减1,不同的是a- -和- -a的值不同,a- -的值等于原变量的值(自减前的值)- -a的值等于新值(自减后的值)
      在这里插入图片描述
    展开全文
  • 一元运算符,二元运算符

    千次阅读 2018-07-06 20:46:13
    一元运算符有1个操作数。例如,递增运算符”++”就是一元运算符。 二元运算符有2个操作数。例如,除法运算符”/”有2个操作数。 三元运算符有3个操作数。例如,条件运算符”?:”具有3个操作数。 运算符的行为还...

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

    展开全文
  • 使用一元运算符实现运算符 一元运算符只对一个表达式执行操作,该表达式可以是数值数据类型类别中的任何一种数据类型。 “+” 一元加运算符 表示正值 “-” 一元减运算符 表示负值 “++” 自增运算符 将值增加一 ...
  • 一元运算符重载

    2019-10-05 09:52:11
    一元运算符只对一个操作数进行操作,下面是一元运算符实例: 递增运算符(++) 和递减运算符(--) 一元减运算符,即符号(-) 逻辑非运算符(!) /*** overone.cpp ***/ #include<iostream> ...
  • 一元运算符++,–,幂运算 public class Dome04 { public static void main(String[] args) { //一元运算符 //++ 自增 //-- 自减 int a = 3; int b = a ++; //执行代码后,先给b赋值,再自增 //a++ a=a+1 ...
  • 运算符/一元运算符

    2019-01-06 00:54:41
    运算符也叫操作符 通过运算符可以对一个或多个值进行运算,并获取运算结果 比如:typeof就是运算符,可以来获得一个值的类型,它会将该值的类型以字符串的形式返回 "number" "string" "...
  • Javascript一元运算符

    千次阅读 2018-06-28 13:27:46
    1.什么是一元运算符呢?符合两边只有一个操作数的符号就是一元运算符;主要有两种:“++”“--”2.“++”运算符他是一种自增运算符,eg:var a=2; a++; console.log(a); 结果为:3、、a++相当于a=a+1;3.“--”...
  • 主要介绍了Java语言中的一元运算符实例解析,需要的朋友可以参考下。
  • js一元运算符

    2021-04-26 22:26:58
    只有一个操作数的运算符就是一元运算符 ;两个操作数的运算符是二元运算符,由表达式组成:操作数、运算符 var num = 2; var num1 = 7; // 前置++ 先自身+1,再运算表达式 console.log(++num) // 先让num自身+1=3,...
  • PS:“+”和“-”既是一元运算符,也是二元运算符。首先我们看看下面这几道题的结果是什么:当 x='1'时, x+1;x-1;+x;-x;++x; typeof(x+1); typeof(x-1); typeof(+x); typeof(-x); typeof(++x); 的结果分别...
  • C++一元运算符重载

    千次阅读 2019-03-22 21:07:05
    一元运算符就是只对一个操作数运算 下面通过两个例子来说明 -(负号)的重载:1、友元函数重载 2、成员函数重载 ++符号的重载(++也是一元运算符):3、前置++重载 4、后置++重载 关键字是:operator 1、友元...
  • 17.一元运算符

    2021-06-30 13:36:06
    <!... <... <head> ...meta charset="utf-8">... 一元运算符,只需要一个操作数 + 正号 ·正号不会对数字产生任何影响 - 负号 ·负号可以对数字进行负号的取反 对于非Num
  • C++语言一元运算符重.cpp
  • 运算符,只需要一个数据单元参加运算,如++a,它就是一元运算符;而"+"、"-"等运算符,如a+b,要求有两个数据单元参加运算,它就是二元运算符;"?:"运算符要求三个运算单元,如(ab)?c...
  • 重载一元运算符

    2014-07-26 10:55:36
    重载一元运算符 不像你所看到的到目前为止经营者,阳性(+),负(-)和逻辑非(!)经营者都是一元运算符,这意味着他们只能运行在一个操作数。因为这些运营商没有改变他们的操作数,我们将实施他们作为朋友函数...
  • 作用于一个运算对象的运算符是一元运算符,如取地址符&和解引用符*; 作用于两个运算对象的运算符是二元运算符,如相等运算符==和乘法运算符*。 转载于:https://www.cnblogs.com/archerzon/p/9623395.html...
  • 一、算术运算符 运算符也叫操作符 【1】概念 通过运算符可以对一个或多个值进行运算,并获取运算结果 比如:typeof 就是运算符,可以来获得一个值的类型,它会将该值的类型以字符串的形式返回 当对非 Number 类型的...
  • ECMAScript 一元运算符

    2015-05-28 16:09:00
    一元运算符只有一个参数,即要操作的对象或值。它们是 ECMAScript 中最简单的运算符。 delete delete 运算符删除对以前定义的对象属性或方法的引用。例如: var o = new Object; o.name = "David"; alert(o...
  • JavaScript基础学习-一元运算符懵b的运算 这里总结的一元运算符是‘+’,‘-’ 可以将显示转换,可以看到,+号只要在a前面就可以,有没有空格无所谓。 var a = '1.1'; var b = +a; // 1.1 var c = + a; // 1.1 ...
  • 029_一元运算符

    2020-11-06 18:24:35
    1. 一元运算符只有一个参数, 即要操作的对象或值。它们是JavaScript中最简单的运算符。 2. 一元加法(+) 2.1. 一元加法的用法与您数学中学到的用法相同。 2.2. 一元加法对数字无作用。 2.3. 一个有趣的效果, 一元...
  • 一元运算符: 只能操作一个值得运算符. 递增++,递减-- 前置和后置的区别: 在没有赋值操作的时候,前置和后置是没有区别的. 存在赋值操作的时候: var box=100++; //box=100 var nox=--100;//box=99 其他...
  • 一元运算符: 序号 一元运算符 说明 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...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,712
精华内容 15,084
关键字:

一元运算符是什么