For문과 가장 큰 차이는 반복 횟수를 아느냐의 여부
For -> 반복횟수 알아요
While -> 몰라요
While(조건식) {
//조건식의 연산결과가 참(true)인 동안, 반복될 문장을 적는다.
}

참이면 계속 반복하다가 거짓이면 while문을 탈출!!

while문과 for문은 둘 다 같다. 바꿔서 쓸 수 있다.
package Java_While;
public class While1 {
public static void main(String arge[]){
int i = 5; //반복할 횟수를 넣는다.
while (i--!=0){
System.out.println("강해린 이상하다");
}
}
}

package Java_While;
import java.util.*;
public class While3 {
public static void main(String args[]){
int num = 0;
int sum = 0;
System.out.println("숫자를 입력하세요.(예 12345)>>>");
Scanner scanner = new Scanner(System.in);
String tmp = scanner.nextLine();
num = Integer.parseInt(tmp);
while(num!=0){
// num을 10으로 나눈 나머지를 sum에 더함
sum+= num%10;
System.out.printf("sum=%3d num=%d%n", sum, sum);
num /= 10; //num = num/10; num을 10으로 나눈 값
}
System.out.println("각 자리수의 합:"+sum);
}
}
코드 설명
입력 처리: Scanner를 사용하여 사용자로부터 문자열을 입력받고 이를 정수로 변환합니다.
자리 수 합산:
num % 10을 통해 현재 숫자의 마지막 자리를 추출하고 이를 sum에 더합니다.
num /= 10을 통해 마지막 자리를 제거합니다.
이 과정을 num이 0이 될 때까지 반복합니다.
출력:
printf를 사용하여 현재의 sum과 num 값을 출력합니다.
모든 자릿수의 합이 계산된 후, 결과를 출력합니다.