(C#) Elmagyaráznátok nekem ezt úgy, hogy megértsem? (foreach)
Figyelt kérdés
using System;
using System.Text;
namespace illés
{
public class adatsor
{
int [] elemek;
public adatsor()
{
elemek=new int[5]{12,44,33,2,50};
}
public vektor GetEnumerator()
{
return new vektor(this);
}
public class vektor
{
int Index;
adatsor a;
public vektor(adatsor ad)
{
a=ad;
Index=-1;
}
public bool MoveNext()
{
Index++;
return(Index<a.elemek.GetLength(0));
}
public int Current
{
get
{
return(a.elemek[Index]);
}
}
}
}
class Program
{
public static void Main(string[] args)
{
adatsor adatok=new adatsor();
Console.WriteLine("Az adatsor elemei:");
foreach(int i in adatok)
{
Console.WriteLine(i);
}
Console.ReadKey();
}
2015. ápr. 3. 12:28
11/11 Piert válasza:
huhh, hát az utolsó válaszoló elég érdekesen gondolkodik. Na szóval... A foreach ( leánykori nevén iteráló ciklus) arra használható, hogy egy gyűjtemény elemein azok indexelése nélkül menj végig ( lásd : cpp ->iterátorok). Ez különösen akkor hasznos, ha olyan kollekciód van, ami nem indexelhető ( magyarán nem tömbös megvalósítású, pl.: láncolt lista ). Ehhez az kell, hogy a gyűjteményed megvalósítsa a System.Collection.IEnumerable és System.Collections.Generic.IEnumerable<T> interfészeket ( gyk emiatt lesz "felsorolható").
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!