Unity相关知识体系梳理(一)c#语言_3

Unity相关知识体系梳理(一)c#语言_3

昨天我们进行了C#的第二部分的梳理,即C#的变量,常量,数据类型部分。而我们接下来要讲的是C#中的运算符和函数方法,这部分和昨天的部分同等重要,要牢记。

C#运算符

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号,C#内置的运算符主要有以下几种

  1. 算术运算符
  2. 关系运算符
  3. 布尔逻辑运算符
  4. 赋值运算符
  5. 其他运算符
算数运算符

c#中算数运算符主要有以下几种

运算符描述
+把两个操作数相加
-从第一个操作数中减去第二个操作数
*把两个操作数相乘
/分子除以分母
%取模运算符,整除后的余数
++自增运算符,整数值增加 1
- -自减运算符,整数值减少 1

算术运算符使用数值操作数执行算术运算 看下面实例

            int tmpIntA = 10;
            int tmpIntB = 20;
            Console.WriteLine(tmpIntA + tmpIntB);
            Console.WriteLine(tmpIntA -tmpIntB);
            Console.WriteLine(tmpIntA * tmpIntB);
            Console.WriteLine(tmpIntA / tmpIntB);
            Console.WriteLine(tmpIntA % tmpIntB);
            tmpIntA++;
            Console.WriteLine(tmpIntA);
            tmpIntA--;
            Console.WriteLine(tmpIntA);
            Console.ReadLine();

运算结果为
在这里插入图片描述
此处关于 ++ 和 - -的相关计算有运算顺序的注意

            int tmpIntA = 10;
            int tmpIntB = 20;
            int tmpIntAnswer = 0;

            tmpIntAnswer = tmpIntA++;//先将tmpIntA的值赋值给tmpIntAnswer ,然后进行++运算
            Console.WriteLine(tmpIntAnswer);//此时tmpIntAnswer =10;tmpIntA=11;
            tmpIntAnswer = ++tmpIntA;//现将tmpIntA进行++运算,然后赋值给tmpIntAnswer ;
            Console.WriteLine(tmpIntAnswer);//此时tmpIntAnswer=tmpIntA=12;
            Console.ReadKey();

输出结果为 10 ,12。- -运算符与之同理。
算数运算符运算符的运算顺序满足数学运算规律,如果不用括号控制的话,通常会从左至右按数学逻辑计算

关系运算符
运算符描述
==检查两个操作数的值是否相等,如果相等则条件为真。
!=检查两个操作数的值是否相等,如果不相等则条件为真。
>检查左操作数的值是否大于右操作数的值,如果是则条件为真。
<检查左操作数的值是否小于右操作数的值,如果是则条件为真。
>=检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。
<=检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。
            int tmpIntA = 10;
            int tmpIntB = 10;
            bool tmpBoolAnswer = false;

            tmpBoolAnswer = (tmpIntA == tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpIntA != tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpIntA >= tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpIntA <= tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpIntA > tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpIntA < tmpIntB);
            Console.WriteLine(tmpBoolAnswer);
            Console.ReadKey();

运算结果如下
在这里插入图片描述

布尔逻辑运算符
运算符描述
&&称为条件逻辑与运算符。如果两个操作数都非零,则条件为真。
ll称为条件逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。
!称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。
^称谓逻辑异或运算符 ,如果两个操作数不同,则条件为真。
&称为逻辑与运算符。如果两个操作数都非零,则条件为真。
l逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。
            bool tmpBoolA = true;
            bool tmpBoolB = false;
            bool tmpBoolAnswer = false;

            tmpBoolAnswer = (tmpBoolA && tmpBoolB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpBoolA & tmpBoolB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpBoolA || tmpBoolB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpBoolA | tmpBoolB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (tmpBoolA^tmpBoolB);
            Console.WriteLine(tmpBoolAnswer);
            tmpBoolAnswer = (!tmpBoolA );
            Console.WriteLine(tmpBoolAnswer);
            Console.ReadKey();

运算结果如下
在这里插入图片描述
此处需要说明的是

  1. &&与&运算符的差别是,运算false&&true的时候,会产生逻辑短路,即并不会运算&&后面的值,而false&true的时候,会运算&后面的值,ll 和l的运算同理。
  2. 对于整型数值类型的操作数,&、| 和 ^ 运算符执行位逻辑运算。 有关详细信息,请参阅 位运算符和移位运算符.
赋值运算符
运算符描述
=简单的赋值运算符,把右边操作数的值赋给左边操作数
+=加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数
-=减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数
*=乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数
/=除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数
%=求模且赋值运算符,求两个操作数的模赋值给左边操作数
            int tmpIntA = 10;
            int tmpIntAnswer = 0;
            tmpIntAnswer += tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            tmpIntAnswer -= tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            tmpIntAnswer *= tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            tmpIntAnswer /= tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            tmpIntAnswer = tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            tmpIntAnswer %= tmpIntA;
            Console.WriteLine(tmpIntAnswer);
            Console.ReadKey();

运算结果为
在这里插入图片描述
其中的运算过程以+=为例则 tmpIntAnswer += tmpIntA;等价于tmpIntAnswer =tmpIntAnswer +tmpIntA;
但是其中需要注意的是,=作为运算符,它的运算顺序是从右向左计算

            int tmpIntA = 10;
            int tmpIntB = 20;
            int tmpIntAnswer = 0;
            tmpIntAnswer = tmpIntA = tmpIntB;
            Console.WriteLine(tmpIntAnswer);
            Console.WriteLine(tmpIntA);

输出结果为20 ,20;其中tmpIntAnswer = tmpIntA = tmpIntB等价于tmpIntAnswer = (tmpIntA = tmpIntB);

其他运算符

其他运算符中我们挑选一些常用的例子,昨天我们尝试过运用size of来看一个变量在内存中的大小,其实size of就是一个运算符,与之类似的还有type of,获取某个变量的类型。我们这里要说的是== ?:==这个运算符 。

            int tmpIntA = 10;        
            int tmpIntAnswer = 0;
            tmpIntAnswer = (tmpIntA == 10) ? 20 : 30;

运算结果是 20 。这个运算符是判断?前面的条件,如果条件是True则取值:前面的值,否则取后面的值。

函数方法(一)

一个方法(函数)是把一些相关的语句组织在一起,用来执行一个任务的语句块。我们对于一个函数的主要操作是声明及调用

声明函数

当定义一个方法时,从根本上说是在声明它的结构的元素,一个函数的主要部分包括
修饰符+ 返回值+ 函数名+(参数)+{函数体}
实例如下:

      static  void tmpFunctiopnA()
        {
            //这是一个没有参数,没有返回值的函数
        }
      static  int tmpFunctiopnA(int tmpIntInput)
        {
            //这是一个有一个int型的参数,会反还一个Int型的返回值的函数
            int tmpIntReturn=0;
            tmpIntReturn = tmpIntInput;
            return tmpIntReturn;

        }

修饰符部分我们明天详细讲述。

调用函数

调用函数需要使用函数名进行调用,实例如下:

static void Main(string[] args)
        {
            tmpFunctiopnA();
            tmpFunctiopnB(30);
            int tmpIntAnswaer = 0;
            tmpIntAnswaer = tmpFunctiopnB(20);
            Console.WriteLine("我是函数外面输出的tmpIntAnswaer" + tmpIntAnswaer);
            Console.ReadLine();
        }
       static void tmpFunctiopnA()
        {
            //这是一个没有参数,没有返回值的函数
        }
       static int tmpFunctiopnB(int tmpIntInput)
        {
            //这是一个有一个int型的参数,会反还一个Int型的返回值的函数
            int tmpIntReturn=0;
           
            tmpIntReturn += tmpIntInput;
            Console.WriteLine("我是函数里面输出的tmpIntReturn" + tmpIntReturn);
            return tmpIntReturn;

        }

输出结果如下:
在这里插入图片描述
在C#控制台中,我们有一个主函数Main函数,此函数是程序进入接口。我们可以自定义其他函数,然后在主函数中调用,来达到控制流程得到结果的目的。
本例中可以看到我们调用函数是通过函数名调用的,每当函数被调用时,函数都会执行一次。当函数带参数的时候,我们必须传入一个与之类型相同的参数,当函数有返回值的时候,我们可以选择用与返回值类型相同的变量来接收返回值,我们也可以不接收返回值,这主要取决于此函数的功用。

今天的整理完成,本次梳理中的动手部分是自己尝试写一些函数,并在其中尝试各个运算符的使用等。下一篇我们讲述C#中的函数参数,修饰符,类型转换等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值