KO CSharp Iterators - LIHACHTETAN/ClassicUO-Bad-Newbie-CSharp-Scripts-IDE GitHub Wiki

ะฃะบั€ะฐั—ะฝััŒะบะฐ ยท ะ ัƒััะบะธะน ยท English ยท Deutsch ยท Franรงais ยท Italiano ยท Espaรฑol ยท ็น้ซ”ไธญๆ–‡ ยท ๆ—ฅๆœฌ่ชž ยท ํ•œ๊ตญ์–ด

๋ฐ˜๋ณต์ž, ํ•ญ๋ณต ๋ฐ ๋น„๋™๊ธฐ ์‹œํ€€์Šค

์„ค๋ช…์„œ C# ยท ์˜ˆ์‹œ UO

yield return ๋ฉ”์„œ๋“œ๋Š” ์š”์†Œ๊ฐ€ ์—ด๊ฑฐ๋œ ๋Œ€๋กœ ์ œ๊ณต๋˜๊ณ , yield break๋Š” ์‹œํ€€์Šค๋ฅผ ์™„์„ฑํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ณธ๋ฌธ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์‹œํ€€์Šค๋ฅผ ์ƒ์„ฑํ•  ๋•Œ๊ฐ€ ์•„๋‹ˆ๋ผ ์—ด๊ฑฐํ•  ๋•Œ ์ž‘๋™ํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. IAsyncEnumerable<T>๋Š” await foreach๋ฅผ ํ†ตํ•œ ์š”์†Œ์˜ ๋น„๋™๊ธฐ ์ˆ˜์‹ ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ„๋‹จํ•œ ์˜ˆ์ œ (Example.cs)

์ด ์˜ˆ์ œ๋ฅผ Example.cs๋กœ ๋”ฐ๋กœ ์ €์žฅํ•˜๊ณ  ์ด ํŽ˜์ด์ง€์˜ ๋‹ค๋ฅธ ์˜ˆ์ œ์™€ ๋…๋ฆฝ์ ์œผ๋กœ ์‹คํ–‰ํ•˜์„ธ์š”.

Example.cs:

// PROJECT-EXAMPLE
System.Collections.Generic.IEnumerable<int> Numbers()
{
    yield return 1;
    yield return 2;
}
foreach (int value in Numbers()) System.Console.WriteLine(value);

๊ฒฐ๊ณผ:

1
2
IEnumerable<int> Range(int count)
{
    for (int i = 0; i < count; i++) yield return i;
}
foreach (int value in Range(3))
{
    UO.Print(value.ToString());
}
async IAsyncEnumerable<int> Ticks()
{
    for (int i = 0; i < 3; i++)
    {
        await WaitAsync(10);
        yield return i;
    }
}
await foreach (int tick in Ticks())
{
    UO.Print($"Tick={tick}");
}

๋‚˜์ค‘์— ์žฌ์ƒ ๊ฐ€๋Šฅํ•œ API์— ์•ก์„ธ์Šคํ•  ํ™œ์„ฑ ์Šคํฌ๋ฆฝํŠธ ์™ธ๋ถ€์˜ ์‹œํ€€์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ๋งˆ์„ธ์š”. ์—ด๊ฑฐํ•  ๋•Œ ์†Œ์Šค ๋ฐ์ดํ„ฐ๊ฐ€ ์ด๋ฏธ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ToArray๊ฐ€ ์‚ฌ์ง„์„ ์บก์ฒ˜ํ•ฉ๋‹ˆ๋‹ค.

๊ณต์‹ ๋ฌธ์„œ: ๋ฐ˜๋ณต์ž, ์‚ฐ์ถœ๋Ÿ‰ ๋ฐ ๋น„๋™๊ธฐ ์‹œํ€€์Šค - Microsoft Learn.

โš ๏ธ **GitHub.com Fallback** โš ๏ธ