DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

Indezadores

0


Indezadores

Los indezadores son una forma cómoda de acceder a una colección de objetos contenida dentro de una clase a través del uso de la sintaxis de los arrays. Al igual que las propiedades, permiten acceder a datos contenidos en un objeto, pero en vez de hacerlo a través de un nombre, lo hacen a través de un índice. Su forma de utilización también es similar.

// indexador.cs

 

using System;

 

class Nota

{

  float[] notas;

 

  public Nota(int alumnos)

  {

    notas = new float[alumnos];

  }

 

  public float this[int indice]

  {

    get { return notas[indice]; }

    set { notas[indice] = value; }

  }

 

  public int Length

  {

    get { return notas.Length; }

  }

 

  public float Media

  {

    get

    {

      float suma = 0;

      foreach(float nota in notas)

      {

        suma += nota;

      }

      return suma / notas.Length;

    }

  }

 

  static void Main()

  {

    Nota n = new Nota(100);

    Random rand = new Random();

    for (int i = 0; i < n.Length; ++i)

    {

      n[i] = 5 + rand.Next(6);

      Console.Write("{0}, ", n[i]);

    }

    Console.WriteLine();

    Console.WriteLine("La nota media es: {0}", n.Media);

  }

}

DEMOSTRACIÓN

En una aplicación de consola arriba del método Main crearemos una clase denominándola Nota, donde tendrá los siguientes atributos:

Fijense que en el atributo "this" contiene un indice, posteriormente colocamos otro atrúbuto denominado Media, el cual nos traerá el resultado de un incremento a través de una suma.


En el método Main escribiremos las intrucciones a generar:


Al realizar un debug vemos que esta pasando todo el indice a la clase correspondiente de Nota asignándole un valor a través del bucle for 


El resultado es el siguiente:







Tal vez te interesen estas entradas

No hay comentarios