Home > C# > C# savjet: yield return i;

C# savjet: yield return i;

Prosinac 30th, 2008

Danas samo jedan brzi savjet za C# jezik, koji moze biti izuzetno koristan pri programiranju. Naredba yield omogucava nam da izvodjenje jedne metode prekinemo upravo na mjestu gdje se iskoristi ta naredba i pocnemo ga opet na istom mjestu kasnije po potrebi. To primjerice mozemo koristiti sa foreach petljom u metodi za provjeravanje prim brojeva. Kada procedura nadje prim broj, izvodjenje se prekida i kao rezultat nam se vraca nadjeni prim broj. Ukoliko u tijeku programa ponovo trebamo sljedeci prim broj, onda jednostavno nastavimo sa izvodjenjem procedure upravo na tom mjestu.

Evo kako to izgleda:

public class Test
    {
        public IEnumerable GetPrimBrojeve() {
            yield return 2;
            yield return 3;
            for (int i = 4; ; i++)
            {
                bool isPrime = true;
                for (int j = 2; j < Math.Sqrt(i); j++)
                {
                    if (i % j == 0)
                    {
                        isPrime = false;
                    }
                }
                if (isPrime)
            {
                yield return i;
            }
            }
        }
    }

Popularity: 5% [?]

C#

  1. Sara
    Veljača 25th, 2009 at 03:40 | #1

    Veoma korisno…

    Hvala

  1. No trackbacks yet.