日期:2014-05-19  浏览次数:20907 次

关于is的问题!
using   System;

  class   Test
{
    public   static   void   Main(){
    Console.WriteLine(1   is   int);
    Console.WriteLine(1   is   float);
    Console.WriteLine(1.0   is   float);
Console.WriteLine(1.0   is   double);

    Console.ReadLine();
  }
}

结果是true
            false
            false
            true

不是很理解了,is的意思是看1或是1.0是否能通过方法转换成int或float或double型吗?
为什么不能转换成float型啊,好象隐式转换都可以的啊,那为什么还是false啊?

不明白了,这个函数是怎么判断的啊?

------解决方案--------------------
is是判断啊,判断具体的对象是属于那种类型,你理解成as了

关于1.0 is float为false是因为你没有加1.0f这样 1.0f is float就可以为true了.