Alkampfer's Place

Il blog di Gian Maria Ricci
posts - 659, comments - 871, trackbacks - 80

My Links

News

Gian Maria Ricci Mvp Logo CCSVI in Multiple Sclerosis

English Blog

Tag Cloud

Article Categories

Archives

Post Categories

Image Galleries

I miei siti

Siti utili

Operatore == e eguaglianza, piccolo quesito

Girovagando per i forum di C# ho visto uno snippet sbagliato di un tizio che in sostanza voleva fare una generica routine per comparare due entity. Da qui faccio nascere una riflessione con due piccole domande: cosa stampa lo snippet seguente?

String TS1 = "test";
String TS2 = "test";
Object TO1 = TS1;
Object TO2 = TS2;
Console.WriteLine("TS1 == TS2 is {0}", TS1 == TS2);
Console.WriteLine("TO1 == TO2 is {0}", TO1 == TO2);

Siamo sicuri al 100% oppure abbiamo bisogno di altre informazioni per affermare con certezza l'output? E il seguente cosa stampa?

String TS3 = "test";
String TS4 = new StringBuilder().Append("test").ToString();
Object TO3 = TS3;
Object TO4 = TS4;
Console.WriteLine("TS3 == TS4 is {0}", TS3 == TS4);
Console.WriteLine("TO3 == TO4 is {0}", TO3 == TO4);

Alk.

Print | posted on lunedì 15 ottobre 2007 15:09 | Filed Under [ .NET ]

Feedback

Gravatar

# re: Operatore == e eguaglianza, piccolo quesito

Ci provo, nel primo caso riceverai 2 True perchè hai chiesto un confronto alla Console.
Nel secondo caso riceverai lo stesso 2 True.
15/10/2007 16:34 | Raffaeu
Gravatar

# re: Operatore == e eguaglianza, piccolo quesito

Bravo diego :D. e a volere essere pignoli, per rispondere alla prima domanda dovremmo sapere se per caso non ho marcato l'assembly in questo modo
[assembly: CompilationRelaxations(CompilationRelaxations.NoStringInterning)]
purtroppo il CLR 2.0 ignora questo attributo :D e quindi nel primo caso abbiamo sempre l'interning anche in presenza dell'attributo sopra specificato.

Alk.
15/10/2007 17:09 | Gian Maria
Gravatar

# Ancora sull’equals

In un precedente post si parla di eguaglianza, volevo fare una piccola precisazione perché in un commento
16/10/2007 18:02 | ExternalBlogs
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET