List<Enemy> Enemies = new List<Enemy>();
var e = Enemies.Take(1);
์ด๋ ๊ฒ ํ๋ฉด e๋ IEnumerable ํ์ ์ด์์์?
์ง๊ธ๊น์ง๋ ์ด๊ฒ ์ฌ๋ฌ๊ฐ์์ด์ ํญ์
foreach(var n in e)
{
n.GetComponent<Enemy>()...
}
์์ผ๋ก ์ ๊ทผ์ด ๊ฐ๋ฅํ๋๋ฐ Take(1)์ ํ๋ฉด ๋จ ํ๋์ ์์๋ง ์ถ์ถํ๋ค๋ณด๋
var e = Enemies.Take(1);์์
e.GetComponent<Enemy>()... ๊ฐ ๋ถ๊ฐ๋ฅํฉ๋๋ค. e๋ IEnumerable์ด๋ผ์์...
๊ทธ๋ ๋ค๊ณ ๋ฆฌ์คํธ์ฒ๋ผ e[0]์ด ๋๋ ๊ฒ๋ ์๋๊ณ ...
์ด๋ป๊ฒ ํ๋ฉด ๋๋์?? ใ ใ
๊ผผ์๋ก๋ var e = Enemies.skip(1).First(); ๋ก ๋๊ธด ํ๋๋ฐ ์ด๊ฒ Array๋ก ๋ฐ๊ฟ์ ์ธ๋ฑ์ค ์ ๊ทผํ๋๊ฒ๋ณด๋ค ์ ๋ ดํ์ง๋ ๋ชฐ๋ฅด๊ฒ ๋ค
1๊ฐ๋ง ๊ฐ์ ธ์ฌ๊ฑฐ๋ฉด ๋ญํ๋ฌ ์ ๋ ๊ฒ ํ๋์ง ์ ๋ชจ๋ฅด๊ฒ ๋๋ฐ IEnumerable์ toList๋ก ๋ฆฌ์คํธ๋ก ๋ฐ๊ฟ์ค์ ์๋ค
๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค. ๊ทธ๋ ๋ค์... ํ ๊ฐ๋ง ์ถ์ถํ ๊ฑฐ๋ฉด ๊ตณ์ด Linq๋ฅผ ์ธ ํ์๊ฐ ์์์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค์. Linq๋ก ์ฌ๋ฌ ๊ฐ๊ณต์ ํ ๋ฐ์ดํฐ๋ค๋ณด๋๊น ๋ง๋ฌด๋ฆฌ๋ ๊ทธ๊ฑฐ๋ก ํ๊ณ ์ถ์๋๋ฐ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ฐพ์๋ด์ผ๊ฒ ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
First, FirstOrDefault, Single, SingleOrDefault