PDA

View Full Version : [C#] String e string differenze?


The March
05-10-2005, 11:24
Come da titolo :mbe:

Ho notato che prende la dichiarazione di stringa sia con la s minuscola che maiuscola con l'unica differenza che la stringa con S maiuscola non viene scritta in blu anche se espone gli stessi metodi :mbe:

Oltre al colore quali altre diufferenze ci sono tra le due dichiarazioni ? :stordita:

VICIUS
05-10-2005, 12:55
Nessuna. In .net string è un alias di String quindi non ci sono differenze.

ciao ;)

pequeno
05-10-2005, 20:13
Nessuna. In .net string è un alias di String quindi non ci sono differenze.

ciao ;)

Beh veramente non è così.
In C# "string" non è un alias di "String", bensì un tipo di dato primitivo;
String invece è un tipo wrapper, in realtà una struttura che funziona come le classi wrapper di java... per intenderci le classi che si basano sui tipi primitivi, ad es. int, boolean ecc.. ma permettono di utilizzarli con le funzionalità degli oggetti.
in java si ha ad esempio:
int è il tipo primitivo
java.lang.Integer è la classe wrapper

Mentre in java usare "int" è diverso dall'usare "Integer", per via del meccanismo di boxing, in C#, grazie al boxing automatico, per il programmatore è indifferente usare ad es. "string" piuttosto che "String".
In pratica è come se il tipo primitivo venisse trasformato direttamente in oggetto..
In java lo stesso risultato si ottiene manualmente con qualcosa del tipo:

int n = 2;
Integer numero = new Integer(n);

:)