java
이 튜토리얼은 명확한 예제, 자세한 단계별 설명, 모범 사례 가이드라인과 함께 Java에서 for 루프를 사용하는 방법을 설명합니다.
루프를 사용하면 코드 블록을 반복적으로 실행할 수 있습니다. 같은 문장을 수십 번 쓰는 대신 루프가 반복을 자동화하여 노력을 절약하고 오류를 줄입니다.
Java는 세 가지 주요 루프 구조를 제공합니다:
이 문서는 for 루프에 중점을 둡니다. 다른 두 루프 유형에 대한 튜토리얼은 사이트에서 찾아볼 수 있습니다.
for 루프는 반복 횟수를 미리 아는 상황에 이상적입니다. 구문은 고전적인 C 스타일 루프를 따릅니다:
for (initialExpression; testExpression; updateExpression) {
// 루프 본문
}
각 구성 요소 설명:
true이면 루프 본문이 실행됩니다.false로 평가될 때까지 루프가 반복됩니다.testExpression에 사용되는 논리 연산자에 대한 자세한 내용은 Java 관계 및 논리 연산자 가이드를 참조하세요.
class Main {
public static void main(String[] args) {
int n = 5;
for (int i = 1; i <= n; ++i) {
System.out.println("Java is fun");
}
}
}
출력
Java is fun Java is fun Java is fun Java is fun Java is fun
반복 분석:
| 반복 | 변수 | 조건 (i <= n) | 작업 |
|---|---|---|---|
| 1번째 | i = 1 n = 5 | true | Java is fun 출력; i는 2가 됨. |
| 2번째 | i = 2 n = 5 | true | Java is fun 출력; i는 3이 됨. |
| 3번째 | i = 3 n = 5 | true | Java is fun 출력; i는 4가 됨. |
| 4번째 | i = 4 n = 5 | true | Java is fun 출력; i는 5가 됨. |
| 5번째 | i = 5 n = 5 | true | Java is fun 출력; i는 6이 됨. |
| 6번째 | i = 6 n = 5 | false | 루프 종료. |
class Main {
public static void main(String[] args) {
int n = 5;
for (int i = 1; i <= n; ++i) {
System.out.println(i);
}
}
}
출력
1 2 3 4 5
이전 예제와 동일한 반복 테이블, 메시지 대신 현재 카운터 값 출력.
class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
for (int i = 1; i <= n; ++i) {
sum += i; // sum = sum + i
}
System.out.println("Sum = " + sum);
}
}
출력
Sum = 500500
루프는 1부터 1000까지 각 정수를 sum에 더합니다. 동일한 결과를 내는 내림차순 형태도 가능:
class Main {
public static void main(String[] args) {
int sum = 0;
int n = 1000;
for (int i = n; i >= 1; --i) {
sum += i;
}
System.out.println("Sum = " + sum);
}
}
배열이나 컬렉션을 순회할 때 for-each 구문은 간결하고 오류 발생 가능성이 적습니다:
class Main {
public static void main(String[] args) {
int[] numbers = {3, 7, 5, -5};
for (int number : numbers) {
System.out.println(number);
}
}
}
출력
3 7 5 -5
각 루프 반복에서 다음 배열 요소가 number에 할당되어 인덱스 관리가 필요 없습니다.
Java for-each 루프 더 알아보기.
테스트 표현식이 절대 false가 되지 않으면 무한 루프가 발생합니다. 일반적으로 피하지만 루프 제어를 보여줍니다:
class Infinite {
public static void main(String[] args) {
for (int i = 1; i <= 10; --i) {
System.out.println("Hello");
}
}
}
i가 1에서 시작하고 조건이 <=10을 확인하면서 감소하므로 조건이 무한히 true로 유지되어 JVM이 메모리가 부족할 때까지 "Hello"를 출력합니다.
java
데이터 수집은 인류 태초부터 주변 이해 수단이었습니다. 시간, 거리, 온도 측정 등. 생산 라인도 동일: 제조·제품·물류 데이터 무제한 수집으로 의사결정 고도화·가치사슬 전구간 부가가치 창출. 이 역할을 수행하는 장비가 센서(Sensors). 공정 다양성·변화 대응 위해 신뢰성·강건성(Robustness) 필수. 센서란? 생산 라인·물류 등 모든 공정에서 대량 데이터 수집 장치. 기계에겐 감각 기관 역할. 수집 정보로 기계 지능화. 데이터 필터링·해석 필수. 센서는 기계에 보기·감지·통신 능력 부여, 정보 분류·해석. 공정 제어
어떤 정밀 제작이든 작업이 시작되기 전에 최종 프로젝트를 구성할 재료를 아는 것은 계획과 비용 산정에 중요합니다. 정밀 가공도 예외는 아닙니다. 어떤 재료와 금속을 사용할지 알면 잠재 고객에게 더 정확한 견적과 가격을 제시할 수 있습니다. 오늘은 가공에 사용하는 금속 종류에 대해 이야기하고자 합니다. 실제로 프로젝트 작업 시 사용할 수 있는 금속은 다섯 가지 유형이 있습니다. 각 금속은 서로 다른 특성을 가지며, 따라서 각각 장단점이 있습니다. 이에 대해 알아보겠습니다: 1. 철계 금속 (Ferrous Metals) 철계 금속은