(五)C#之运算符

原创 2017年01月03日 00:33:06

C#两种特别的运算符

is运算符

这个运算符主要用来检测某变量的类型是否有特定的类型相兼容
我们看一下下面的一个示例:

        public static void Main()
        {
            String str = "";
            if (str is Object)
            {
                Console.WriteLine(str.GetType() + "与该类型是兼容的");
            }else{
                Console.WriteLine(str.GetType() + "与该类型是不兼容的");
            }
        }

程序会输出System.String 与该类型的兼容的
如果把上面的Object改成Double那么输出会输出不兼容了!

as运算符

这个运算符主要用来将引用类型进行显式的类型转换
注意:

  • 如果要转换的变量的类型与指定的类型相兼容,转换就会成功进行;
  • 如果不兼容,那么返回值的就是 null;
  • as关键字只能作用于引用类型或者可以为null的类型(比如Double等就不可以啦);
    由于上面的第三条规则,所以这个运算符基本就没啥用处了。常见的类型除了 String string Object 和 object之外就基本没有了。

运算符重载

我先既然都讲到这里了,就再讲一下运算符重载吧(一般学过C++的都知道这个,学Java的可能就没听过了)!
看下面的一个小例子:

    class Count {
        public int num;//该类中只有一个参数
        public Count(int num) {//初始化参数
            this.num = num;
        }
        public static Count operator +(Count c1,Count c2){//将 + 进行重载,传入俩参数
            return new Count(c1.num+c2.num);//返回新的Count实例
        }
    }
    class Test { 
        public static void Main(){
            Count c1 = new Count(2);
            Count c2 = new Count(4);
            Count c3 = c1 + c2;
            Console.WriteLine("c3中num值为:"+c3.num);//输出 6
        }
    }

上面就是一个最基本的重载了,大家可以对照着去实现 - * / 等等。

版权声明:转载请注明出处!

C#继承(五)——is和as运算符

在结束接口和类的继承之前,需要介绍两个与继承有关的重要运算符:is和as。 如前所述,可以把具体类型的对象直接分配给基类或接口——如果这些类型在层次结构中有直接关系。例如,前面创建的SaverAcc...

c#运算符和控制流

  • 2017年11月02日 14:31
  • 110KB
  • 下载

细究三目运算符在python、C#、C异同

要实现如下题目:        要求:比较下面两相数(num1与num2)的值,如果num1>num2,则result=num1+num2,如果num1 一、使用Python语言实现 1、常...
  • xiekj
  • xiekj
  • 2017年12月07日 21:13
  • 4

C#位运算及运算符

  • 2012年10月16日 12:07
  • 18KB
  • 下载

C#运算符优先级解释

  • 2013年10月01日 16:55
  • 128B
  • 下载

【C#】变量、运算符和数据类型总结

先说说三者是什么关系呢?为什么把这三者放在一起总结呢?   表达式=变量+运算符。使用变量需要先声明数据类型。这三者都是C#语言中的基本概念。 【变量】 声明: int num1=50; 命名: 开头...
  • qsbbl
  • qsbbl
  • 2017年04月06日 16:21
  • 476

C#系列编程第4讲-运算符和表达式

  • 2012年07月03日 17:21
  • 24.47MB
  • 下载

C#语言技巧跟语言运算符

  • 2010年08月25日 10:34
  • 45KB
  • 下载

C#编程入门_表达式和运算符_3

算术运算符(+ 加 -减 * 乘 / 除 % 取模 ++ 自增 – 自减) using System; using System.Collections.Generic; using Sys...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:(五)C#之运算符
举报原因:
原因补充:

(最多只允许输入30个字)