Foros del Web » Programación para mayores de 30 ;) » .NET »

[C#] Buscar rápido en Listas

Estas en el tema de [C#] Buscar rápido en Listas en el foro de .NET en Foros del Web. Buenas, tengo una lista del siguiente tipo de datos que he establecido: Código: public struct t_grupo { public String grupo; public Double inc; public t_grupo(String ...
  #1 (permalink)  
Antiguo 22/03/2017, 12:27
 
Fecha de Ingreso: julio-2011
Mensajes: 76
Antigüedad: 12 años, 9 meses
Puntos: 1
[C#] Buscar rápido en Listas

Buenas, tengo una lista del siguiente tipo de datos que he establecido:

Código:
        public struct t_grupo
        {
            public String grupo;
            public Double inc;

            public t_grupo(String g, Double i)
            {
                grupo = g;
                inc = i;
            }
        }
Entonces he creado mi lista de este tipo: List<t_grupo> lista_t_grupos = new List<t_grupo>();


El caso es que tengo ahí bastantes datos, y ahora quisiera buscar de la forma más rápido posible en esa lista, buscando por "grupo", que si encuentra a dicha variable dentro de la lista, me devuelva la otra variable correspondiente a ese grupo, o sea "inc".

¿Como puedo hacer esto?

¡Gracias!
  #2 (permalink)  
Antiguo 22/03/2017, 12:45
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 12 años, 7 meses
Puntos: 48
Respuesta: [C#] Buscar rápido en Listas

Usa diccionarios y como indice el grupo.

Código PHP:
Ver original
  1. Dictionary<string,double> DicGrupos = new Dictionary<string,double>();
  2.  
  3. DicGrupos["GrupoEjemplo"] = 13.5;/Agregamos
  4. Console.WriteLine(DicGrupos["GrupoEjemplo"]);//Leemos e imprimimos su valor.
__________________
Rodrigo Agüero
  #3 (permalink)  
Antiguo 22/03/2017, 12:53
 
Fecha de Ingreso: julio-2011
Mensajes: 76
Antigüedad: 12 años, 9 meses
Puntos: 1
Respuesta: [C#] Buscar rápido en Listas

Cita:
Iniciado por Rodrhigo Ver Mensaje
Usa diccionarios y como indice el grupo.

Código PHP:
Ver original
  1. Dictionary<string,double> DicGrupos = new Dictionary<string,double>();
  2.  
  3. DicGrupos["GrupoEjemplo"] = 13.5;/Agregamos
  4. Console.WriteLine(DicGrupos["GrupoEjemplo"]);//Leemos e imprimimos su valor.


¿Y en caso de tener más de 2 valores en el struct?

Muchas gracias por la ayuda!!!
  #4 (permalink)  
Antiguo 22/03/2017, 21:36
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 12 años, 7 meses
Puntos: 48
Respuesta: [C#] Buscar rápido en Listas

En caso de tener 2 valores agregas una clase/struct en lugar de double.
Código C#:
Ver original
  1. Dictionary<string,t_grupo> DicGrupos = new Dictionary<string,t_grupo>();
  2.  
  3. DicGrupos["GrupoEjemplo"]  = new  t_grupo(){inc=1234, valor2="hola mundo"};
  4. Console.WriteLine("Inc: " + DicGrupos["GrupoEjemplo"].inc + "valor2: "+ DicGrupos["GrupoEjemplo"].valor2);
__________________
Rodrigo Agüero

Etiquetas: listas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:06.