当前位置:  开发笔记 > 编程语言 > 正文

C#中bool和Boolean类型有什么区别

如何解决《C#中bool和Boolean类型有什么区别》经验,为你挑选了9个好方法。

C#boolBoolean类型有什么区别?



1> Kent Boogaar..:

bool是一个别名,System.Boolean就像int是别名一样System.Int32.请在此处查看别名的完整列表:内置类型表(C#参考).


@Mikey我很确定Java决定使用这些别名来保持一致性,微软决定使用Java来保持一致...... :-)
@MaxWell在Java中,`boolean`和`Boolean`不是一回事.一种是原始数据类型,另一种是对象.
@asmin:这是一件C事.int,float等是C和C++程序员熟悉的关键字,因此Microsoft决定使用这些别名来保持一致性.
@asim:懒惰?它输入较少,无需导入系统.就个人而言,我更喜欢别名.键入"int"比键入"Int32"要快得多.
从上面的链接microsoft说C#类型的关键字和它们的别名是可以互换的但是为什么我们需要别名,从我的观点来看布尔值更有意义然后bool和Int32比int更有意义然后为什么别名???
这个别名只是给我一个问题.我使用bool因为我认为它是"正确的"类型,然后我很困惑为什么我的"bool"MVC DisplayTemplate没有触发.结果我需要将它命名为Boolean.如果我意识到布尔是官方类型而bool只是方便的别名,我从一开始就使用布尔.

2> bhinks..:

我不相信有一个.

bool 只是一个别名 System.Boolean



3> MagicKat..:

他们是一样的.bool只是布尔的别名.



4> Zach Burling..:

没有区别 - bool只是System.Boolean的别名.

http://msdn.microsoft.com/en-us/library/c8f5xwh7(VS.71).aspx



5> Ryan Buddico..:

我意识到这是多年以后但我偶然发现这个页面来自谷歌同样的问题.

到目前为止,MSDN页面上存在一个细微差别.

VS2005

注意:

如果您需要一个也可以为null的布尔变量,请使用bool.有关更多信息,请参见可空类型(C#编程指南).

VS2010

注意:

如果您需要一个也可以为null的布尔变量,请使用bool?.有关更多信息,请参见可空类型(C#编程指南).


我被这个绊了 - 这似乎是文档中的一个错误.我首先看到了VS2005页面(它在我的Google排名中显得更高!),并认为它暗示`bool`可以包含null,但是`Boolean`不能.即使从旧版本到新版本文档之间存在链接,我也没有仔细阅读新文档以注意单个"?"的区别.

6> Joel Coehoor..:

他们是一样的.Boolean有助于简化C#和VB.Net之间的来回转换.大多数C#程序员倾向于选择'bool',但是如果你在一个有大量VB.Net和C#的商店,那么你可能更喜欢布尔,因为它在两个地方都有效.



7> itsmatt..:

一个是另一个的别名.



8> Carra..:

如前所述,它们是一样的.有两个因为bool是C#关键字而布尔是.Net类.



9> 小智..:

bool是Boolean类的别名.我在类上调用方法时声明变量和类名时使用别名.


出于兴趣 - 你为什么要同时使用它们?我主张使用其中一个.要么使用别名,要么不使用,否则代码看起来混乱和不一致.
混合别名和类名只会增加代码清晰度.选择一个并坚持下去,imho
是的,这是它应该完成的确切方式.int不是类名,你不应该在它上面调用方法.另一方面,它是内置类型,并定义Int32 i; 太冗长而且不自然.
我认为当你不同时使用它们时看起来很麻烦.使用别名声明数据类型并在访问静态方法时使用actuall类名:string x = String.Format("Today is:{0}",DateTime.Now);
推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有