코드 블록을 실행할지 여부를 선택하는 방법입니다.
if
문은 조건에 따라 코드 블록을 실행하는 데 도움이 됩니다. 예를 들어, if
문을 사용하면 "마우스를 눌렀을 때 원을 그리기"라는 아이디어를 쉽게 표현할 수 있습니다:
if (mouseIsPressed === true) { circle(mouseX, mouseY, 20); }
if문의 도입은 키워드 if
로 시작합니다. 괄호 안의 표현식 mouseIsPressed === true
는 true
또는 false
가 될 수 있는 Boolean
표현식입니다. 중괄호 {}
사이의 코드는 if 문의 본문으로, Boolean
표현식이 true
일 때만 실행됩니다. mouseIsPressed 시스템 변수는 항상 true
또는 false
이므로, 위의 코드 스니펫은 다음과 같이 쓸 수도 있습니다:
if (mouseIsPressed) { circle(mouseX, mouseY, 20); }
if
-else
문은 표현식이 false
일 때 실행되는 코드 블록을 추가합니다. 예를 들어, 다음과 같은 if
-else
문은 "마우스를 누르면 원을 그리고, 그렇지 않으면 메시지를 표시하라"는 아이디어를 표현합니다:
if (mouseIsPressed === true) { // When true. circle(mouseX, mouseY, 20); } else { // When false. text('Click me!', 50, 50); }
이 코드 스니펫에는 두 가지 가능한 경로 또는 분기가 있습니다. 프로그램은 한 분기 또는 다른 분기를 따라야 합니다.
else
-if
문은 더 많은 분기를 추가할 수 있게 합니다. else
-if
문은 다양한 조건에서 다른 코드 블록을 실행합니다. 예를 들어, else
-if
문을 사용하면 "마우스가 왼쪽에 있으면 캔버스를 하얗게 칠하고, 마우스가 중앙에 있으면 회색으로, 그 외의 경우에는 검정으로 칠하라"는 아이디어를 쉽게 표현할 수 있습니다:
if (mouseX < 33) { background(255); } else if (mouseX < 67) { background(200); } else { background(0); }
if
문은 필요한 만큼 많은 else
-if
문을 추가할 수 있습니다. 그러나 else
문은 하나만 있을 수 있으며 마지막에 있어야 합니다.
if
문은 한 번에 여러 조건을 확인할 수도 있습니다. 예를 들어, Boolean
연산자와 &&
(AND)는 두 표현식이 모두 true
인지 확인합니다:
if (keyIsPressed === true && key === 'p') { text('You pressed the "p" key!', 50, 50); }
사용자가 키를 누르고 그 키가 'p'
인 경우 메시지가 표시됩니다.
Boolean
연산자 ||
(OR)는 두 표현식 중 적어도 하나가 true
인지 확인합니다:
if (keyIsPressed === true || mouseIsPressed === true) { text('You did something!', 50, 50); }
사용자가 키를 누르거나 마우스 버튼을 누르거나 둘 다 누른 경우 메시지가 표시됩니다.
if
문의 본문에는 또 다른 if
문이 포함될 수 있습니다. 이를 "중첩 if
문"이라고 합니다. 예를 들어, "중첩 if
문"은 "키가 눌렸다면 키가 'r'인지 확인하고, 그렇다면 채우기를 빨간색으로 설정하라"는 아이디어를 쉽게 표현할 수 있습니다:
if (keyIsPressed === true) { if (key === 'r') { fill('red'); } }