for
반복횟수를 알때.
for(;;) ->무한반복
for(;true;)
+증감식 콤마로 구분해서 한개 이상 사용 가능
for(int i =0; i<10; sum+=i, i++)
package ch03;
public class ForEx01 {
public static void main(String[] args) {
int sum = 0;
for(int i=0; i<=100; i++)
sum +=i;
System.out.println(sum);
}
}
for (int i=1, j=10; i<=10; i++, j--) {
System.out.println("i=" +i+ ",j=" +j);
}
//변수 2개 사용할 수 있음.(대신 타입 같아야 됨)
중첩 for문
package ch03;
public class NestedLoop {
public static void main(String[] args) {
for(int i=1; i<10; i++) { //1단에서 9단
for(int j=1; j<10; j++) { //각 단의 구구셈 출력
System.out.print(i + "*" +j+ "=" +i*j); //구구셈 출력
System.out.print('\t'); //하나씩 탭으로 띄기
}
System.out.println(); //한 단이 끝나면 다음 줄로 커서 이동
}
}
}
do~while
:블럭{}을 먼저 수행한 다음에 조건식을 계산한다.
import java.util.Scanner;
//숫자 맞추기
public class NumberEx {
public static void main(String[] args) {
int input, answer;
answer = (int) (Math.random() * 100 + 1); // Math클래스는 double값을 받는다. random 메소드는 0.0~0.9999까지 리턴해줌.
// 1~100까지 나오게 하기 위해 *100하고 +1해준다
Scanner s = new Scanner(System.in);
do {
System.out.println("1~100사이의 정수를 입력하시오.");
input = s.nextInt();
if (input > answer)
System.out.println("더 작은 수를 입력해서 맞춰보세요.");
else if (input < answer)
System.out.println("더 큰 수를 입력해서 맞춰보세요.");
} while (input != answer);
System.out.println("정답입니다!");
s.close();
}
}
while
:반복횟수를 모를 때 사용
while (true) ->무한반복
import java.util.Scanner;
public class NumberEx2 {
public static void main(String[] args) {
int num=0 , sum=0;
Scanner s = new Scanner(System.in);
System.out.println("숫자를 입력하세요.(ex : 12345)>> ");
num = s.nextInt();
while(num != 0) { //횟수를 내가 정하는게 아니라 사용자가 원하는 숫자 만큼 돌게 함
sum += num%10; //마지막자리 숫자를 누적
System.out.printf("sum = %3d num = %d%n", sum, num);
num /= 10; //마지막자리 빼고 나옴.
}
System.out.println("각 자리수의 합: " +sum);
s.close();
}
}
for each
for (int a :b)
:배열이나 나열의 각 원소를 순차적으로 접근하는데 유용한 for문
// b에서 차례대로 객체를 꺼내 a에 넣겠다.
public class ForeachEx {
enum Week {월, 화, 수, 목, 금, 토, 일}
enum Fruit{사과, 배, 바나나, 체리, 딸기, 포도};
public static void main(String[] args) {
int [] n = {1, 2, 3, 4, 5};
String[] names = {"사과", "배", "바나나", "체리", "딸기", "포도"};
int sum = 0;
for (int k :n){
System.out.print(k+" ");
sum += k;
}
System.out.println("합은 " +sum);
for (String s :names)
System.out.print(s+ " ");
System.out.println();
for(Week day:Week.values())
System.out.print(day +"요일 ");
System.out.println();
}
}
'JAVA' 카테고리의 다른 글
JAVA 배열 (0) | 2022.07.09 |
---|---|
JAVA break, continue, return, Loop (0) | 2022.07.09 |
JAVA if문, if else문, switch문 (0) | 2022.07.09 |
JAVA Scanner, BufferedReader (0) | 2022.07.09 |
JAVA 아스키코드표 (0) | 2022.07.09 |