c#中bool类型和布尔类型的区别是什么?
我不相信有。
bool只是System的别名。布尔
他们是一体的。bool只是布尔值的别名。
一个是另一个的别名。
bool是System的别名。布尔值,就像int是System.Int32的别名一样。查看别名的完整列表:内置类型表(c#参考)。
它们是一样的。
c#程序员倾向于使用bool类型。更少的打字,来自那个语言家族的人感觉更自然。它也保证你得到实际的系统。布尔类型(否则可以在不同的名称空间中创建自己的布尔类型,并且类型解析可能变得不明确)。
但是如果你在一个商店里面有很多VB和VB。Net和c#,那么你可能更喜欢布尔,因为它在两个地方都可以工作,并有助于简化c#和VB.Net之间的转换。
如前所述,它们是一样的。有两个,因为bool是c#关键字,Boolean是. net类。
bool是布尔类的别名。我在声明变量时使用别名,在类上调用方法时使用类名。
没有区别- bool只是System.Boolean的别名。
http://msdn.microsoft.com/en-us/library/c8f5xwh7 (VS.71) . aspx
我意识到这是多年后的事情了,但我无意中在谷歌上看到了同样的问题。
到目前为止,在MSDN页面上有一个微小的差异。
VS2005
注意: 如果你需要一个布尔变量,也可以有一个null值,使用bool。 有关更多信息,请参见可空类型(c#编程指南)。
VS2010
注意: 如果你需要一个布尔变量,也可以有一个null值,使用bool?。 有关更多信息,请参见可空类型(c#编程指南)。
也许bool比Boolean“轻”一点;有趣的是,改变这一点:
namespace DuckbillServerWebAPI.Models
{
public class Expense
{
. . .
public bool CanUseOnItems { get; set; }
}
}
...:
namespace DuckbillServerWebAPI.Models
{
public class Expense
{
. . .
public Boolean CanUseOnItems { get; set; }
}
}
...导致我的cs文件发芽“使用系统;”将类型更改回“bool”会导致using子句的头发变成灰色。
(Visual Studio 2010, WebAPI项目)
注意,布尔只会工作,你有使用系统;(通常包括,但不一定包括)(除非你把它写成System.Boolean)。bool不需要使用System;
它们是一样的,Bool就是System。布尔缩短。当你和VB.net程序员一起工作时,使用布尔值,因为它同时适用于c#和Vb
Bool是一个基本类型,这意味着值(在本例中为true/false)直接存储在变量中。Boolean是一个对象。Boolean类型的变量存储对Boolean对象的引用。唯一真正的区别是存储。对象总是比基本类型占用更多的内存,但实际上,将所有布尔值更改为bool并不会对内存使用产生任何明显的影响。
我错了;这就是java中布尔和布尔函数的工作原理。在c#中,bool和Boolean都是引用类型。它们都直接在变量中存储它们的值,它们都不能为空,并且它们都需要“convertTO”方法以另一种类型(例如int)存储它们的值。只有在需要调用布尔类中定义的静态函数时,使用哪个函数才重要。
bool是布尔值的别名。别名的作用是在代码编译之前,用另一个文本字符串替换一个文本字符串(如notepad++中的search/replace-all)。在运行时使用其中一个而不是另一个没有任何影响。
在大多数其他语言中,一个是基本类型,另一个是对象类型(c#术语中的值类型和引用类型)。c#没有提供在两者之间进行选择的选项。当您想要调用Boolean类中定义的静态方法时,它会自动魔术般地将Boolean视为引用类型。如果您创建了一个新的布尔变量,它会自动魔术般地将其视为引用类型(除非您使用Activator。CreateInstance除外)方法。
没有实际的区别,除非你得到类型字符串。 当你使用反射或GetType()时,你得到 {Name = "Boolean" FullName = "系统。布尔”} 为两个。
推荐文章
- 如何获取HttpContext。目前在ASP。网络核心?
- 给定文件系统路径,是否有一种更短的方法来提取没有扩展名的文件名?
- 方法在字典中添加新项或更新现有项
- 使用Lambda/Linq对列表进行对象排序
- 为什么我不能在.NET中定义一个结构的默认构造函数?
- Volatile boolean vs AtomicBoolean
- TypeLoadException表示“没有实现”,但它已经实现了
- 如何在ASP中返回当前操作。NET MVC视图?
- 存储Kinect 2.0版本的动作到BVH文件
- SortedList和SortedDictionary之间的区别是什么?
- jQuery用户界面对话框。NET按钮回发
- 合并。net中的两个数组
- 如何在Visual Studio中启用NuGet包恢复?
- 如何在实体框架6中调用存储过程(代码优先)?
- c#中的数组片