2011-07-17 2 views
2

나는 명백하게 할 생각을 가지고 있었지만, 이미 나가는 지 아무도 모른다는 것을 알고 싶었다.
bool 출력을 반환하고 반환 할 수있는만큼 액션 또는 bool 표현식을 얻을 수있는 Helper 클래스를 만듭니다. 어쩌면 확장 메소드처럼 할 수도 있습니다.결합하고 분리 된 도우미 클래스

if(a==b.Or(a != c).And(IsBool).VerifyAll(numbers)); 

실제로 이것은 좋은 아이디어 일 수 있습니다.

UPDATE

내 의도는 예를 들어, 부울 용어의 표현을 얻을 하나의 대답에 가입입니다

public static bool Conjuntion(params bool[] expressions) 
    { 
     for (int i = 0; i < expressions.Length; i++) 
     { 
      if (!expressions[i]) 
      { 
       return false; 
      } 
     } 
     return true; 
    } 

또는

public static bool Disjuntion(params bool[] expressions) 
    { 
     for (int i = 0; i < expressions.Length; i++) 
     { 
      if (!expressions[i]) 
      { 
       return false; 
      } 
     } 
     return true; 
    } 
+0

'a','b' 및'c'는 무엇이며'numbers'와 어떤 관련이 있습니까? 대신에 람다 식을 의미 했습니까? –

+1

'Conjunction()'과'Disjuntion()'메소드는 이전 예제와 어떤 관련이 있습니까? 왜'&&'와'||'s를 사용하지 않는가? 'VerifyAll()'이해야 할 것은 무엇입니까? – svick

답변

4

왜 바퀴를 재발견?

if (numbers.All (a => (a == b || a != c) && IsBool (a))) 

은 예제 Enumerable.All, Enumerable.Any를 참조하십시오.

+0

죄송합니다. 휠체어를 다시 만들려고 의도 한 적이 없으며, 둥글게 만들었습니다. 'Enumerable.All'과 같은 것을 알지 못했지만 제 의도는 어떤 종류의 배열에없는 부울 표현을 얻는 것입니다. – guyl

+2

@ guyl, "어떤 종류의 배열이 아닙니다", 무슨 배열에 대해 이야기하고 있습니까? – svick