Salut
Existe-t-il une différence entre string et String ?
Et y'a-t-il un avantage à utiliser l'un plutôt que l'autre ?
Merci !
Salut
Existe-t-il une différence entre string et String ?
Et y'a-t-il un avantage à utiliser l'un plutôt que l'autre ?
Merci !
Aucune différence: String représente le type et string est un alias vers ce type.
C'est comme Int32 et int.
A+
Thomas LEBRUN: MCAD.NET, MCTS (Win et Web), MCPD(Win et Web) & Microsoft MVP Client Application Development
WPF par la pratique, mon livre sur WPF ! (également disponible ici ou là)
A la découverte de .NET
Non ce n'est pas vraiment ça.
string est un alias (donc exactement la même chose) de String.
Int32 est un objet encapsulant le type primitif int.
Ca n'est pas la même chose.
Int32 permet d'avoir un objet "de type int" pour tous les cas où on ne peut pas manipuler un type primitif.
La conversion de int vers Int32 (et inversement) a un coût.
Ta remarque est interressante duncan55, peux-tu nous offrir quelques liens à ce proposEnvoyé par duncan55
Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles
Non, int est bien un simple alias vers System.Int32 , c'est la même chose. (c'est en tout cas ce qui est dit dans les spécifications du langage, voir ici , paragraphe 11.1.4).
Autant pour moi, j'avais mal compris, int est bien identique à Int32.
Cela signifie donc qu'un champs int est un objet ?
Il n'est pas possible d'avoir juste une valeur entière sans la notion de référence des objets ?
EDIT:
Cela signifie que Int32 n'est pas un objet ?The example
is more interesting. An int value can be converted to object and back again to int. This example shows
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class Test { static void Main() { int i = 123; object o = i; // boxing int j = (int) o; // unboxing } }
both boxing and unboxing. When a variable of a value type needs to be converted to a reference type, an
object box is allocated to hold the value, and the value is copied into the box. Unboxing is just the opposite.
When an object box is cast back to its original value type, the value is copied out of the box and into the
appropriate storage location.
ou alors, C'est le compilateur qui fait le boxing en cas d'utilisation des méthodes "objets" de Int32.
Si, c'est un objet mais qui est traité non pas par une référence, mais directement en tant qu'entité, par sa valeur. Il ne faut pas confondre avec Java qui dispose d'un type primitif int et de sa classe 'équivalente' traitée par référence Integer. En C#, int et Int32 sont des synonymes pour le type entier traité par valeur.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager