web-dev-qa-db-fra.com

Quelle est la différence entre les types bool et booléen en C #

Quelle est la différence entre les types bool et Boolean en C #?

319
Gary Willoughby

bool est un alias pour System.Boolean tout comme int est un alias pour System.Int32. Consultez la liste complète des alias ici: Tableau des types intégrés (référence C #) .

367
Kent Boogaart

Je ne crois pas qu'il y en ait un.

bool n'est qu'un alias pour System.Boolean

45
bhinks

Ils sont l'un dans le même. bool n'est qu'un alias pour Boolean.

22
MagicKat

Il n'y a pas de différence - bool est simplement un alias de System.Boolean.

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

18
Zach Burlingame

Je me rends compte que cela se passe de nombreuses années plus tard, mais je suis tombé sur cette page de Google avec la même question.

Il y a une différence mineure sur la page MSDN à partir de maintenant.

VS2005

Remarque:

Si vous avez besoin d'une variable booléenne pouvant également avoir la valeur null, utilisez bool. Pour plus d'informations, consultez Types nullables (Guide de programmation C #).

VS2010

Remarque:

Si vous avez besoin d'une variable booléenne pouvant également avoir la valeur null, utilisez bool ?. Pour plus d'informations, consultez Types nullables (Guide de programmation C #).

14
Ryan Buddicom

Ce sont les mêmes. La méthode booléenne simplifie la conversion entre C # et VB.Net. La plupart des programmeurs C # ont tendance à préférer "bool", mais si vous êtes dans un magasin où il y a beaucoup de VB.Net et de C #, vous préférerez peut-être Boolean car cela fonctionne aux deux endroits.

13
Joel Coehoorn

L'un est un alias pour l'autre.

9
itsmatt

Comme on l'a dit, ce sont les mêmes. Il y en a deux car bool est un mot clé C # et Boolean une classe .Net.

9
Carra

bool est un alias pour la classe booléenne. J'utilise l'alias lors de la déclaration d'une variable et le nom de la classe lors de l'appel d'une méthode sur la classe.

5
James Boother

Ce sont les mêmes, Bool est simplement System.Boolean raccourci. Utilisez Boolean lorsque vous utilisez un programmeur VB.net, car cela fonctionne à la fois en C # et en Vb.

2
Prime_Aqasix

Notez que Boolean ne fonctionnera que si vous avez using System; (qui est généralement, mais pas nécessairement, inclus) (à moins que vous ne l'écriviez sous la forme System.Boolean). bool n'a pas besoin de using System;

1
James Curran

bool est un type primitif, ce qui signifie que la valeur (true/false dans ce cas) est stockée directement dans la variable. Boolean est un objet. Une variable de type Boolean stocke une référence à un objet Boolean. La seule vraie différence est le stockage. Un objet utilisera toujours plus de mémoire qu'un type primitif, mais en réalité, changer toutes vos valeurs booléennes en valeurs booléennes n'aura aucun impact notable sur l'utilisation de la mémoire.

J'avais tort; c'est comme ça que ça marche dans Java avec booléen et booléen. En C #, bool et Boolean sont deux types de référence. Les deux d'entre eux stockent leur valeur directement dans la variable, les deux ne peuvent pas être null, et les deux nécessitent une méthode "convertTO" pour stocker leurs valeurs dans un autre type (tel que int). Peu importe celle que vous utilisez si vous devez appeler une fonction statique définie dans la classe booléenne.

0
Nate