0 과 음수 처리
이전 단계에서는 양수를 식별하는 데 집중했습니다. 이제 프로그램을 확장하여 0 과 음수도 식별해 보겠습니다. 이렇게 하면 배열의 숫자에 대한 더 완전한 그림을 얻을 수 있습니다.
if-else if-else 문을 사용하여 조건부 논리를 이해하기가 더 쉬우므로, 먼저 기존의 for 루프 접근 방식을 사용하여 0 과 음수를 확인하도록 PositiveCheck.java 파일을 다시 수정합니다.
편집기에서 PositiveCheck.java 파일을 엽니다. 기존 코드를 다음으로 바꿉니다.
public class PositiveCheck {
public static void main(String[] args) {
// Define an array of integers
int[] numbers = {10, -5, 20, 0, 15, -8};
// Loop through the array
for (int i = 0; i < numbers.length; i++) {
// Get the current number
int currentNumber = numbers[i];
// Check if the number is positive, negative, or zero
if (currentNumber > 0) {
System.out.println(currentNumber + " is a positive number.");
} else if (currentNumber < 0) {
System.out.println(currentNumber + " is a negative number.");
} else {
System.out.println(currentNumber + " is zero.");
}
}
}
}
다음은 새로운 내용입니다.
else if (currentNumber < 0): 이는 else if 문입니다. 이전 if 조건 (currentNumber > 0) 이 false 인 경우에만 currentNumber가 0 보다 작은지 확인합니다.
else: 이는 else 문입니다. 선행 if 또는 else if 조건이 모두 true 가 아닌 경우 else 블록 내부의 코드가 실행됩니다. 이 경우 숫자가 0 보다 크지 않고 0 보다 작지 않으면 0 이어야 합니다.
PositiveCheck.java 파일을 저장합니다.
이제 터미널에서 수정된 프로그램을 컴파일하고 실행합니다.
javac PositiveCheck.java
java PositiveCheck
이제 배열의 각 숫자를 분류하는 출력을 볼 수 있습니다.
10 is a positive number.
-5 is a negative number.
20 is a positive number.
0 is zero.
15 is a positive number.
-8 is a negative number.
이는 if-else if-else 문을 사용하여 루프 내에서 여러 조건을 처리하는 방법을 보여줍니다. 이는 프로그래밍에서 의사 결정을 위한 기본적인 패턴입니다.
partitioningBy 또는 여러 filter 연산과 같은 고급 기술을 사용하여 Stream API 를 사용하여 유사한 결과를 얻을 수도 있지만, if-else if-else를 사용한 for 루프는 특히 초보자에게 이 특정 작업에 대한 명확하고 간단한 접근 방식입니다.