C# 중첩 루프의 우아한 종료 방법
C# 중첩 루프를 처리할 때 모든 루프를 일찍 종료해야 하는 경우가 있습니다. 전통적인 접근 방식은 부울 플래그나 GOTO 문에 의존하는 경우가 많으며 둘 다 코드 가독성과 성능에 영향을 미칩니다.
솔루션
더 세련된 접근 방식은 익명 메서드나 로컬 함수를 사용하는 것입니다. 무명 메서드에서 return
문은 메서드를 일찍 종료하여 모든 중첩 루프에서 벗어날 수 있습니다. 이 접근 방식은 비교적 잘 수행되며 코드 가독성이 향상됩니다.
익명 메소드 사용 예
<code class="language-csharp">// 创建一个匿名方法 Action work = delegate { for (int x = 0; x < 10; x++) { for (int y = 0; y < 10; y++) { if (x == 5 && y == 5) { return; // 退出匿名方法,从而退出两个循环 } } } }; work(); // 调用匿名方法</code>
로컬 기능 사용 예시
C# 7에는 중첩 루프를 종료하는 대신 구문적으로 더 간결한 대안을 제공하는 로컬 함수가 도입되었습니다.
<code class="language-csharp">// 创建一个局部函数 void Work() { for (int x = 0; x < 10; x++) { for (int y = 0; y < 10; y++) { if (x == 5 && y == 5) { return; // 退出局部函数,从而退出两个循环 } } } } Work(); // 调用局部函数</code>
요약
익명 메서드나 로컬 함수를 사용하면 효율적이고 유지 관리가 쉬운 C# 중첩 루프 조기 종료 방법이 제공됩니다. 이러한 방법은 코드 가독성을 향상시키고 부울 플래그나 GOTO 문과 같은 기존 방법보다 성능이 더 뛰어난 대안을 제공합니다.
위 내용은 C#에서 중첩 루프를 효율적으로 중단하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!