Se puede hacermatriz que puede ser accesado usando array [ 'nombre'] en C#
array['Name'];
En C#
En lugar de:
array[0];
sé que puede hacer que en PHP pero hay un equivalente para C#, aunque estoy pensando highley improbable :(
Se puede hacermatriz que puede ser accesado usando array [ 'nombre'] en C#
array['Name'];
En C#
En lugar de:
array[0];
sé que puede hacer que en PHP pero hay un equivalente para C#, aunque estoy pensando highley improbable :(
se llama Dictionary
en C# . Usando genéricos puedes indexar por cualquier tipo. De la misma manera:
Dictionary<Person, string> dictionary = new Dictionary<Person, string>();
Person myPerson = new Person();
dictionary[myPerson] = "Some String";
...
string someString = dictionary[myPerson];
Console.WriteLine(someString);
Esto obviamente imprime, "Some String" a la consola.
Este es un ejemplo de la flexibilidad del diccionario. También puede hacerlo con una cadena como índice, como lo pidió.
Dictionary<string, whatyouwanttostorehere> myDic =
new Dictionary<string, whatyouwanttostorehere>();
myDic.Add("Name", instanceOfWhatIWantToStore);
myDic["Name"];
ty ... Nice .... –
eso es lo que quise decir lo siento, no apareció completamente la primera vez. –
matrices no funcionan así en C#, pero puede agregar una propiedad de indizador a cualquier clase:
class MyClass
{
public string this[string key]
{
get { return GetValue(key); }
set { SetValue(key, value); }
}
}
entonces usted puede escribir el tipo de declaraciones puede pedir en contra de esta:
MyClass c = new MyClass();
c["Name"] = "Bob";
Así es como se implementan el acceso indexado basado en cadenas a Dictionary<TKey, TValue>
, NameValueCollection
y clases similares. También puede implementar varios indexadores, por ejemplo, uno para el índice y otro para el nombre; simplemente agrega otra propiedad como la anterior con un tipo de parámetro diferente.
Varias clases del framework incorporadas ya tienen estos controladores paso a paso, incluyendo:
SortedList<TKey, TValue>
Dictionary<TKey, TValue>
SortedDictionary<TKey, TValue>
NameValueCollection
Lookup<TKey, TValue>
(en System.Linq
)... y más. Estos están diseñados con propósitos ligeramente diferentes, por lo que querrá leer cada uno y ver cuál es el más apropiado para sus necesidades.
Gracias, impresionante respuesta para laters ....: D –
Yeap, eche un vistazo a 'System.Collections' http://msdn.microsoft.com/en-us/library/system.collections.aspx – xandercoded
@exandercoded, es probable que desee' System.Collections.Generic'. 'System.Collections' es la forma no genérica de .net 1. – Kobi
Gracias ........: D –