๊ทธ๋ฅ for๋ก ๋๋ฉด์ null ์๋๊ฑฐ ๊ฐฏ์๋ฅผ ์ธ
linq๋ก .Where(item => item != null).Count() ํ๋ฉด ์ฌ๋์ ๋ฐ๋ผ ์ฝ๊ฐ ๋ ๊ธฐ๋ถ์ข์์๋ ์์
์กฐ๊ฑด๋ฌธ์๋ค ๋ฃ์ ์๊ฐ์ด๋ผ์ ๊ทธ๋ผ.. if (xxx.Length != 0) ์ด๋ฐ ์์ผ๋ก ๋ฐฐ์ด ํฌ๊ธฐ ์ด์ฉ ํ๋ฏ์ด ์์ ์ซ์๋ ํธ์ถํด์ ์ธ์ ์๋ ์ถ์ด์
์ค ํ๋ฒ ํด๋ด
๊ทธ๋ฅ .Length ์ฒ๋ผ ์ฐ๊ณ ์ถ์๊ฑฐ๋ฉด ํ์ฅ๋ฉ์๋๋ฅผ ๋ง๋์
public static int CountNotNulls(this List list) => list.Where(item => item != null).Count() ์ด๋ฐ์์ผ๋ก ๋ง๋ค๊ณ ๊ทธ๋ฅ list.CountNotNulls(); ์ฒ๋ผ ์ฐ๋ฉด ๋จ
๋ ๋น๊ต๊ตฌ๋ฌธ ๋น์ฉ์ด ๋น์ผํธ์ด๋ผ ์์ฃผ ๋ถ๋ฌ์ผํ๋ฉด ๋ฐ๋ก ๊ฐฏ์๋ฅผ ์ ์ฅํ๋ ๋ณ์๋ฅผ ๋๊ฑฐ๋ ๋ฆฌ์คํธ๋ฅผ ์ฐ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค
์ง๋ฌธ์ด๋์ ๋ค๋ฅธ ์๊ธฐ๊ธด ํ๋ฐ ๋ฐฐ์ด์ ๋์ด ํฌํจ ๋ ์ ์๋ ํํ๋ ์ฌ๋ฌ๊ฐ์ง๊ณ ์ ์ง๋น์ฉ ๋ง์ด ๋ค์ง ์์?
๋๋ ์์ ๋๊ธ์ฒ๋ผ ๊ฐฏ์ ๋ฐ๋ก ๊ธฐ์ตํ๋ ๋ณ์ ํ๋ ๋ง๋๋๊ฑฐ ์ถ์ฒํจ. ์์ฃผ ์ฌ์ฉํ๊ณ ๊ฐฏ์ ๋ง์์ง์๋ก ๋ฉ๋ชจ๋ฆฌ ๋์ณ๋๋ ์ง๊ธ์ ํ ์ด๋ธ์ด ๋ ์ธ๊ฒ๋จนํ
๊ทธ๋ฅ for๋ก ๋๋ฉด์ null ์๋๊ฑฐ ๊ฐฏ์๋ฅผ ์ธ
linq๋ก .Where(item => item != null).Count() ํ๋ฉด ์ฌ๋์ ๋ฐ๋ผ ์ฝ๊ฐ ๋ ๊ธฐ๋ถ์ข์์๋ ์์
์กฐ๊ฑด๋ฌธ์๋ค ๋ฃ์ ์๊ฐ์ด๋ผ์ ๊ทธ๋ผ.. if (xxx.Length != 0) ์ด๋ฐ ์์ผ๋ก ๋ฐฐ์ด ํฌ๊ธฐ ์ด์ฉ ํ๋ฏ์ด ์์ ์ซ์๋ ํธ์ถํด์ ์ธ์ ์๋ ์ถ์ด์
์ค ํ๋ฒ ํด๋ด
๊ทธ๋ฅ .Length ์ฒ๋ผ ์ฐ๊ณ ์ถ์๊ฑฐ๋ฉด ํ์ฅ๋ฉ์๋๋ฅผ ๋ง๋์
public static int CountNotNulls(this List list) => list.Where(item => item != null).Count() ์ด๋ฐ์์ผ๋ก ๋ง๋ค๊ณ ๊ทธ๋ฅ list.CountNotNulls(); ์ฒ๋ผ ์ฐ๋ฉด ๋จ
๋ ๋น๊ต๊ตฌ๋ฌธ ๋น์ฉ์ด ๋น์ผํธ์ด๋ผ ์์ฃผ ๋ถ๋ฌ์ผํ๋ฉด ๋ฐ๋ก ๊ฐฏ์๋ฅผ ์ ์ฅํ๋ ๋ณ์๋ฅผ ๋๊ฑฐ๋ ๋ฆฌ์คํธ๋ฅผ ์ฐ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค
์ง๋ฌธ์ด๋์ ๋ค๋ฅธ ์๊ธฐ๊ธด ํ๋ฐ ๋ฐฐ์ด์ ๋์ด ํฌํจ ๋ ์ ์๋ ํํ๋ ์ฌ๋ฌ๊ฐ์ง๊ณ ์ ์ง๋น์ฉ ๋ง์ด ๋ค์ง ์์?
๋๋ ์์ ๋๊ธ์ฒ๋ผ ๊ฐฏ์ ๋ฐ๋ก ๊ธฐ์ตํ๋ ๋ณ์ ํ๋ ๋ง๋๋๊ฑฐ ์ถ์ฒํจ. ์์ฃผ ์ฌ์ฉํ๊ณ ๊ฐฏ์ ๋ง์์ง์๋ก ๋ฉ๋ชจ๋ฆฌ ๋์ณ๋๋ ์ง๊ธ์ ํ ์ด๋ธ์ด ๋ ์ธ๊ฒ๋จนํ