Eğer C#Dizisi
array['Name'];
do
yerine Can:
array[0];
Sana o yapabileceğini biliyorum PHP, ancak C# için bir eşitlik var, ancak imkansız düşünme imkansız :(
Eğer C#Dizisi
array['Name'];
do
yerine Can:
array[0];
Sana o yapabileceğini biliyorum PHP, ancak C# için bir eşitlik var, ancak imkansız düşünme imkansız :(
buna C# Dictionary
denir . Jenerik kullanarak herhangi bir türe göre indisleyebilirsiniz. Öyleyse:
Dictionary<Person, string> dictionary = new Dictionary<Person, string>();
Person myPerson = new Person();
dictionary[myPerson] = "Some String";
...
string someString = dictionary[myPerson];
Console.WriteLine(someString);
Bu, açıkça, konsola "Bazı Dize" yazdırır.
Bu, sözlüğün esnekliğine bir örnektir. İstediğiniz gibi bir dizgi de dizini olarak yapabilirsiniz. Bu karşı sormak
class MyClass
{
public string this[string key]
{
get { return GetValue(key); }
set { SetValue(key, value); }
}
}
Sonra tabloların tipini yazabilirsiniz:
Dictionary<string, whatyouwanttostorehere> myDic =
new Dictionary<string, whatyouwanttostorehere>();
myDic.Add("Name", instanceOfWhatIWantToStore);
myDic["Name"];
ty ... Güzel .... –
bu ne demek istemediğimi, göstermedim tamamen ilk kez. –
Diziler C# böyle çalışmaz, ancak herhangi bir sınıfa bir dizin özelliği ekleyebilir
MyClass c = new MyClass();
c["Name"] = "Bob";
Dictionary<TKey, TValue>
, NameValueCollection
ve benzeri sınıflara dize tabanlı dizinli erişim nasıl uygulanır. Aynı zamanda, birden fazla dizinleyici de uygulayabilirsiniz, örneğin, dizin için bir ve ad için bir tane, sadece farklı bir parametre türü ile yukarıdaki gibi başka bir özellik ekleyin.
SortedList<TKey, TValue>
Dictionary<TKey, TValue>
SortedDictionary<TKey, TValue>
NameValueCollection
Lookup<TKey, TValue>
System.Linq
cinsinden):
Çeşitli dahili çerçeve sınıfları zaten dahil olmak üzere bu dizinleyiciler var
... ve daha fazlası. Bunların hepsi biraz farklı amaçlar için tasarlanmıştır, bu yüzden her birini okumak ve gereksiniminize uygun olanı görmek isteyeceksiniz.
Teşekkürler, laters için awsome cevap ....: D –
Yeap, 'System.Collections' http://msdn.microsoft.com/en-us/library/system.collections.aspx – xandercoded
@ xandercoded 'e bakın, muhtemelen' System.Collections.Generic 'olmasını istersiniz. 'System.Collections', .net 1. 'den jenerik olmayan bir formdur. – Kobi
Teşekkür ederiz ........: D –