第四章 学习 表达式

 4.1

C # 将运算符分为三类 1. 一元运算符2.二元运算符 3. 三元运算符

4.2 使用初等表达式  是运算符的重要组成部分。

几种不同的初等表达式:

 1:字面值  在C#中 直接使用硬编码的值。

 比如 if (FirstName = ="Brain")

Brain 就输入直接使用硬编码

也可以这样 将其存入某个变量中,然后再进行比较。

string MyFirstName = "Brain";

if (FirstName == MyFirstName)

两个布尔型的字面值 true and false.

十进制 及 十六进制的字面值

int MyVariable = 125;

int MyVariable = 125U;U指 无符号类型的;智能调整大小。

int MyVariable = 125L; 说明是 long型的;

采用十六进制的时候,可以采用 A---F 及0---9,字母大小写均可。

实字面值 即 使用浮点值

数字+指数+数字

实字面值没指定的话认为是 double 否则:

float MyVariable = 7.5F ;说明为浮点值

double  MyVariable = 7.5D;说明为double 类型的

decimal MyVariable = 7.5M;说明 是decimal类型的.

使用字符字面值 指定 字符的值:

char MyVariable = 'a';

使用字符串的字面值嵌入字符串:

string MyVariable = "Hello from C#";

使用空的字面值,是C#的一大特色。

object MyObject = null;


2 标识符:

 

C#中的编写的标识符是一些简单的表达式的实例。

如下 int MyVariable = 123;

标识符有类型,在声明标识符的时候必须指明类型。


3带括号的表达式:

带括号的表达式的值为括号内的表达式计算后的结果。


4成员访问:

 调用对象的方法 表达式 如下: object.method 对象+点+方法

Myclass MyObject;

MyObject = new MyClass();

MyObject.Main();



5 调用表达式:

class MyClass

{

    public static void Main()

{

     MyClass myclass = new MyClass();

   myclass.DoWork();

 

}

   void DoWork()

{

    // do work here

}

 

}

上面的例子中, Main()方法调用而来DoWork()方法。


6元素访问:

class MyClass

{

     public static void Main()

   {

         int[] MyArray

     MyClass myclass = new Myclass();

MyArray = new int[5];

  MyArray[myclass.GetArrayIndex()] =123;

 

 

   }

   int GetArrayIndex()

{

   return 0;

}

 

}

 


7 this 关键字: 当表达式中或函数中 含有类 或新定义的类时, 并出现this ,则this 代之 该类。

C#还定义了base 关键字 最初的base class 另外够造出的 derivaed class



8库访问

9后缀方式的增一 或减一:就是以前了解过的i++类似。


10new 运算符 前面已经用于创建数组,此外还可以 创建对象。


11 typeof 运算符 是C#的一个关键字。用于返回标量类型的信息。

12 checked and unchecked 运算符:

checked(Int1+Int2);

unchecked()表达式是默认的情况,表示为unchecked()的表达式不检验值的合法性,并且未检验的,无意义的值继续运行程序。

4.3  理解一元表达式

   一元加法表达式

  一元减法表达式

  逻辑求返回运算符  即 感叹号! 将 true or false 求返的过程。

   按位求返运算符 就是 将二进制 1 变为0, 0变为1 过程。按位求返时将波浪号

 ~ 放在表达式的前面。

     例如:

   Int1 = 123;

   Int1 = ~Int1;

    间接运算符

   取地址运算符

   前缀方式增1 或减1运算符   注意  使用前缀方式的运算表达式时候, 在求出表达式的值之前改变数值的大小;使用后缀的方式的运算符时,在求出表达式的值之后改变值的大小。

   类型转换运算符

4.4 理解算数运算符

  1 赋值运算符  可以一次给多个变量赋值

 MyInteger = 3; 

  MyInteger =MyOtherInteger =3;


  2 乘法运算符

  3 除法运算符 除法运算符 得到的如果不为整数,则取商数。

  4 加法运算符 字符相加的时候得到 链接的字符串

如下

string CombinedString = "Hello from" + "C#";

得到 CombinedString 的结果 Hello from C#

  5 减法运算符

  6 取余运算符

  4.5  理解位移运算符

  包括左位移运算符 及右 位移运算符

  都是将数字转化为 二进制的数字,然后执行 移动。

  关系型的运算符 允许 比较两个表达式的值 ,并得到一个布尔型的结果。

 

   == 表示恒等运算符,来比较两个 值是否相等。

  != 不等运算符

   < 小于运算符

  > 大于运算符

   <= 小于等于运算符

  >= 大于等于运算符

 上面这些应该都属于 比较运算符

  4.6 理解整数逻辑运算符

    AND &  运算符

  MyInteger = 6 & 3;的结果为2

 也就是 将 6 和3 都化为二进制后,相同且都为1 才不变,其余为0了

   exclusive OR ^运算符

  跟上面的意思差不多,就是 只有两个相同位置上都一样的情况下结果才为1.

    OR | 运算符

   只要两个相同位置上有至少一个为1 时候结果才是1.


  4.7 理解条件逻辑运算符

    条件与 conditonal AND   &&

   MyBoolean = true && false; 只有两者都是true 是才是true

      conditional OR

     MyBoolean = true || false;

只要一个为true 结构都为true .

      条件逻辑conditional logic 唯一的三元表达式

MyInteger = (MyVariable == 123)? 3:5;

 比较选择。

4.8 理解运算的次序

 C# 

  初等表达式

 一元运算符

 乘除运算

加减运算符

 移位运算符

关系运算符

 相等不等运算符

 逻辑与运算符

 逻辑异或运算符

 逻辑或运算符

条件与运算符

 条件或运算符

条件三元运算符

赋值运算符


 

 



 

 

 





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值