Kurzusok
/
C#
C#
/
Feladatok
/
Tracks on Tracks on Tracks
Tracks on Tracks on Tracks

Tracks on Tracks on Tracks

Tanulófeladat

Bevezetés

Generikus típusok

Egy gyűjtemény definíciója általában tartalmaz egy helyőrzőt csúcsos zárójelben, amelyet a szokás szerint gyakran T-nek nevezünk. Az ilyen gyűjteményt generikus típusnak nevezzük. Ez lehetővé teszi, hogy a gyűjtemény használója megadja, milyen típusú elemeket tároljon a gyűjteményben. Az alábbi példakódban egy stringekből álló listát példányosítunk.

Listák

A C#-ban a listák primitív értékek, illetve struktúrák vagy osztályok példányainak gyűjteményei. Az alaposztály-könyvtárban List<T> formában vannak megvalósítva, ahol a T a listában tárolt elem típusa. Az API gazdag metóduskészletet kínál a listák létrehozásához és kezeléséhez.

A listákhoz elemek adhatók, és elemek eltávolíthatók belőlük. Szükség szerint nőnek és zsugorodnak.

var listOfStrings = new List<string>();

Utasítások

Ebben a feladatban olyan kódot írsz, amely számon tartja, milyen programozási nyelveket szeretnél megtanulni az Exercism-ön.

Kilenc részfeladat vár rád, és mindegyik a listákkal való munkáról szól.

1. Hozz létre egy új listát

Ahhoz, hogy számon tudd tartani a megtanulni kívánt nyelveket, létre kell hoznod egy új listát.

Valósítsd meg a statikus Languages.NewList() metódust, amely egy új, üres listát ad vissza.

Languages.NewList()
// => empty list

2. Definiálj egy meglévő listát

Jelenleg van egy papírlapod, amelyen azok a nyelvek szerepelnek, amelyeket meg szeretnél tanulni: C#, Clojure és Elm.

Valósítsd meg a statikus Languages.GetExistingLanguages() metódust, amely visszaadja ezt a listát.

Languages.GetExistingLanguages();
// => {"C#", "Clojure", "Elm"}

3. Adj hozzá egy új nyelvet egy listához

Ahogy egyre többet fedezel fel az Exercism-ön, és egyre érdekesebb nyelvekre bukkansz, szeretnéd felvenni őket a listádra.

Valósítsd meg a statikus Languages.AddLanguage() függvényt, amely egy új nyelvet fűz a listád végére.

Languages.AddLanguage(Languages.GetExistingLanguages(), "VBA");
// => {"C#", "Clojure", "Elm", "VBA"}

4. Számold meg a listán lévő nyelveket

Kényelmetlen egyenként megszámolni a nyelveket.

Valósítsd meg a statikus Languages.CountLanguages() metódust, amely megszámolja, hány nyelv van a listádon.

Languages.CountLanguages(Languages.GetExistingLanguages())
// => 3

5. Ellenőrizd, hogy szerepel-e egy nyelv a listán

Valósítsd meg a statikus Languages.HasLanguage() metódust, amellyel ellenőrizheted, hogy egy nyelv szerepel-e a listán.

Languages.HasLanguage(Languages.GetExistingLanguages(), "Elm")
// => true

6. Fordítsd meg a listát

Egy ponton rájössz, hogy a listád valójában fordított sorrendben van!

Valósítsd meg a statikus Languages.ReverseList() metódust, amely megfordítja a listádat.

Languages.ReverseList(Languages.GetExistingLanguages())
// => {"Elm", "Clojure", "C#"}

7. Ellenőrizd, hogy izgalmas-e a lista

Bár minden nyelvet szeretsz, a C# különleges helyet foglal el a szívedben. Ezért igazán izgatott leszel egy nyelvlistától, ha az alábbi feltételek valamelyike igaz:

  • A lista első eleme a C#.
  • A lista második eleme a C#, és a listán vagy két vagy három nyelv szerepel.

Valósítsd meg a statikus Languages.IsExciting() metódust, amellyel ellenőrizheted, hogy izgalmas-e egy nyelvlista:

Languages.IsExciting(Languages.GetExistingLanguages())
// => true

8.Nyelv eltávolítása

Valósítsd meg a statikus Languages.RemoveLanguage() metódust, amely eltávolít egy megadott nyelvet a listáról.

Languages.RemoveLanguage(Languages.GetExistingLanguages(), "Clojure")
// => { "C#", "Elm" }

9. Ellenőrizd, hogy a listán szereplő összes nyelv egyedi-e

Valósítsd meg a statikus Languages.IsUnique() metódust, amellyel ellenőrizheted, hogy ismétlődik-e valamelyik nyelv a listán.

Garantált, hogy a nyelvek listája (azaz a paraméter) nem üres, amikor ezt a metódust meghívják, és az sem számít, ha a lista módosul.

Languages.IsUnique(Languages.GetExistingLanguages())
// => true
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
C# Exercism

Készen állsz elkezdeni a(z) Tracks on Tracks on Tracks feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) C# nyelvet 62 fogalom178 feladat segítségével, valódi emberi mentorálással, mindez ingyen.