Informatika érettségi programozás részéhez milyen beépített függvények ismerete nyújt jelentős előnyt (C#)?
Nem kotelezo hasznalni sehol, de nem is ez volt a kerdes, hanem hogy mivel lehet gyorsabban,rovidebben a kodot megirni es a Linq nevterben IEnumerable generikus interface ala tartozo kiegeszito metodusok pont erre lettek kitalalva.Csak egy egyszeru erettsegi szintu peldat tekintve, mondjuk a tanulok atlag eletkora:
hagyomanyos mod:
int sum=0;
foreach(var student in students)
{
sum+=student.Age;
}
double avg=(double)sum/students.Length;
linq-val:
double avg=students.Average(s=>s.Age);
Egyertelmu hogy melyik a rovidebb, es szinte mindegyik feladat tipushoz lehet talalni egy odavago metodust.
Vagyis rövidebb, ha már rövid kódról beszelünk. :). Szóval szimplán
double avg = students.Avarege();
"Még azt se kell, főleg ha List el dolgozik. :) Ott is tudja az Átlagot és gyorsabb is"
List<T>.Average() ugyanazt a kiegészítő metódust használja, mint az Array vagy egyéb kollekció, nincs különbség.
"double avg = students.Avarege();"
Összetett adattípusnál nem lehet megúszni a selector parametert, mivel nem triviális, hogy melyik adattaggal számoljon.
"Szóval lehet az IEnumareble metódusait használni, de felesleges hozzá a Linq. "
IEnumerable kiegészítő metódusai használatához kötelező a Sytem.Linq namespace-t usingolni.
LINQ-t nagyon ajánlom, szinte megkönnyebbíti az életed. Nem kell tömbökkel sz.rakodni, egyszerűen LinQ. Pl, ki volt a leggyorsabb a versenyen? írd ki névvel együtt. Sok sikert LINQ nélkül.
Feltöltéshez (ha esetleg listába kell) ajánlom az AddRange függvényt. Pl.: szavak.AddRange(File.ReadAllLines("szoveg.txt"))
"ki volt a leggyorsabb a versenyen? írd ki névvel együtt. Sok sikert LINQ nélkül."
Struktúra. Sorbarendezés metódus. Kész.
További kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!