있을 필요가 몇 가지 조건이 끝나고 분기가 시작되는 이야기의 방법. 그렇게하는 방법에는 여러 가지가 있습니다.
일부 언어에서 더 조건문이없는 모든 스몰 토크, 자기, 신어, 이오, Ioke, Seph, 팬시에서 예. 조건부 분기는 다른 방법과 마찬가지로 일반적인 방법으로 간단하게 구현됩니다. 이 메소드는 부울 오브젝트에서 구현되며 부울에서 호출됩니다. 그런 식으로 조건은 단순히 메소드의 수신자이며 두 분기는 예를 들어 스몰 토크에서 두 가지 인수입니다.
aBooleanExpression ifTrue: [23] ifFalse: [42].
Java에 익숙한 경우 다음과 같습니다.
aBooleanExpression.ifThenElse(() -> 23, () -> 42);
Lisp 계열의 언어에서는 상황이 비슷합니다. 조건은 단지 정상적인 함수 (실제로는 매크로)이고 첫 번째 인수는 조건이고 두 번째 및 세 번째 인수는 분기이므로 일반 함수 인수 일뿐입니다. 그들을 구분하는 데 특별한 것이 필요하지 않습니다.
(if aBooleanExpression 23 42)
일부 언어는 키워드를 구분 기호로 사용합니다 (예 : Algol, Ada, BASIC, Pascal, Modula-2, Oberon, Oberon-2, Active Oberon, Component Pascal, Zonnon, Modula-3) :
IF aBooleanExpression THEN RETURN 23 ELSE RETURN 42;
Ruby에서는 키워드 또는 표현식 구분 기호 (세미콜론 또는 줄 바꿈)를 사용할 수 있습니다.
if a_boolean_expression then 23 else 42 end
if a_boolean_expression; 23 else 42 end
# non-idiomatic, the minimum amount of whitespace required syntactically
if a_boolean_expression
23 else 42 end
# idiomatic, although only the first newline is required syntactically
if a_boolean_expression
23
else
42
end
Go 는 브랜치가 블록이어야하고 표현식이나 문장을 허용하지 않으므로 중괄호가 필수입니다. 따라서 원하는 경우 추가 할 수 있지만 괄호는 필요하지 않습니다. Perl6과 Rust는 이와 관련하여 비슷합니다.
if aBooleanExpression { return 23 } else { return 42 }
일부 언어는 영숫자가 아닌 다른 문자를 사용하여 조건을 구분합니다 (예 : Python).
if aBooleanExpression: return 23
else: return 42
결론은 : 당신이 필요로하는 몇 가지 조건이 끝나고 분기가 시작되는 이야기의 방법. 그렇게하는 방법에는 여러 가지가 있으며 괄호는 그중 하나 일뿐입니다.
THEN
).