《Inside C#》笔记(九) 表达式和运算符

赋值和比较操作是一门语言最基本的功能。

一 基本概念

a)基本的运算符有加、减、乘、除、取余、赋值。

运算结果需要保存在内存的某个区域,有时直接保存在操作数本身,不管怎样,如果没有保存运算结果,编译器会报错。

大多数运算符都只能操作值类型(还有包括decimal),==、!=、=还可以操作对象,+、+=可以操作字符串,+=也可用于事件注册。

b)运算符的优先级,从上到下依次降低

c)运算符的执行顺序

加减乘除等二元运算符从左到右执行、’=’从右向左执行。

d)特殊运算符

typeof

用来取得类的Type,主要用于反射

sizeof

用来获取某个类型占用的字节数,比如sizeof(int)=4,sizeof(bool)=1。原来bool类型占用一字节,一直以为是一比特的。sizeof也能用在自定义类型如结构体上。

e)一元运算符+、-

用来指示数值的正负,为了避免混乱,最好加上括号,如a=b*(-c);

二 其它运算符

a)混合运算符

+=、-+这一类的,结果上相当于a=x+y这样的写法,但实际上具体执行过程是有区别的,尤其是涉及到方法调用的场合,比如:

加黑的代码对应的IL码如下

方法竟然被调用了两次,这在有些时候可能会带来莫名其妙的问题。

而混合运算符只调用方法一次:

所以推荐尽量用混合运算符

b)自增自减运算符

i++与++i的区别:i++ 返回原来的值,++i 返回加1后的值

c)比较运算符

>=、<=、!=、==

==比较引用类型时,对比的是两者的地址,要想比较两者的内容,可以重写equals方法

时间: 2024-09-28 21:46:24

《Inside C#》笔记(九) 表达式和运算符的相关文章

JavaScript学习笔记【2】表达式和运算符、语句、对象

笔记来自<JavaScript权威指南(第六版)> 包含的内容: 表达式和运算符 语句 对象 表达式和运算符 数组直接量中的列表逗号之间的元素可以省略,这时省略的空位会填充值undefined.元素列表末尾可以留下单个逗号,这时并不会创建一个新的值为undefined元素. 属性访问表达式,.identifier的写法只适用于要访问的属性名称是合法的标识符,并且需要知道要访问的属性的名字.如果属性名称是一个保留字或者包含空格和标识符,或是一个数字(对于数组来说),则必须使用方括号的写法.当属性

python学习笔记表达式和运算符(一)

表达式和运算符 什么是表达式? 1+2*3 就是一个表达式,这里的加号和乘号叫做运算符,1.2.3叫做操作数.1+2*3 经过计算后得到的结果是7,就1+2*3 = 7.我们可以将计算结果保存在一个变量里,ret = 1-2*3 . 所以表达式就是由操作数和运算符组成的一句代码或语句,表达式可以求值,可以放在"="的右边,用来给变量赋值. 算术运算符 : + - * / //(取整除) %(取余) ** >>> 2+3 >>> 3-2 >>

JavaScript权威指南第04章 表达式和运算符

www.qdmm.com/BookReader/1845423,31051137.aspx www.qdmm.com/BookReader/1845423,31073665.aspx www.qdmm.com/BookReader/1845423,31088923.aspx www.qdmm.com/BookReader/1845423,31104070.aspx www.qdmm.com/BookReader/1845423,31114804.aspx www.qdmm.com/BookRea

第八章 表达式和运算符

表达式和运算符 表达式字面量 整数字面量实数字面量字符字面量字符串字面量 求值顺序 优先级结合性 简单算术运算符求余运算符关系比较运算符和相等比较运算符递增运算符和递减运算符条件逻辑运算符逻辑运算符移位运算符赋值运算符 表达式和运算符 表达式 本章将定义表达式,并描述C#提供的运算符. 运算符是一个符号,它表示返回单个结果的操作.操作数(operand)指作为运算符输入的数据元素.一个运算符会: 将操作数作为输入 执行某个操作 基于该操作返回一个值 表达式是运算符和操作数的字符串.可以作为操作数

JS学习第六天----表达式和运算符

表达式和运算符 1.如果不清楚运算符的优先级,最简单的办法就是使用括号来明确表明计算顺,赋值操作的优先级很低,几乎自后才被执行 2.如果"+"运算符表达式中一个是字符串,而另一个不是,则另一个会被自动转换为字符串. 如果加号运算符中一个运算数为对象,则这个对象会被转换为可以进行加法运算的数字或可以进行连接运算的字符处澳门,这一转换是通过调用该对象的valueof()或toString()方法来实现的. 3.如果"-"运算符的运算数字不是数字,那么系统会自动把它们转换

JavaScript 精粹 基础 进阶(2)表达式和运算符

转载请注明出处 原文连接 http://blog.huanghanlian.com/article/5b698e88b8ea642ea9213f4a 表达式和运算符 JavaScript 表达式 表达式是指能计算出值得任何可用程序单元.--Wiki 表达式是一种JS短语,可使JS解释器用来产生一个值.--<JS权威指南> JavaScript 运算符 三元运算符 c ? a : b var val = true ? 1 : 2; // val = 1 //val值为true就会返回冒号前面的值

表达式和运算符

1.原始表达式 最简单的表达式是“原始表达式”.原始表达式是表达式的最小单位——它们不再包含其他表达式JavaScript中的原始表达式包含常量或直接量.关键字和变量 例如: 1.23//数字直接量 “hello”//字符串直接量 true //保留字 undefined //变量 2.对象和数组的初始化表达式 对象和数组初始化表达式实际上是一个新创建的对象和数组 数组初始化表达式: var p=[1,3,5,6,8]; var p=[[1,2,3],[4,5,6],[7,8,9]]; var

第4章 表达式和运算符

表达式(expression)是JS中的一个短语,JS解释器会将其计算(evaluate)出一个结果 4.1 原始表达式 4.2 对象和数组的初始化表达式 4.3 函数定义表达式 4.4 属性访问表达式 4.5 调用表达式 4.6 对象创建表达式 4.7 运算符概述 4.8 算术表达式 4.9 关系表达式 4.10 逻辑表达式 4.11 赋值表达式 4.12 表达式计算 4.13 其他运算符

2、JS中的表达式和运算符

一.表达式 1.原始表达式:2.14,“test”,true/false,null……复合表达式:10*20…… 2.数组.对象的初始化表达式:new Array(1,2),[1,undefined,4],{x:1,y:2}=>var o = new Object();o.x=1;o.y=2;…… 3.函数表达式:var fe = function(){}; (function(){console.log('hello');})()…… 4.属性访问表达式:var o = {x:1}; o.x;