테스트 사이트 - 개발 중인 베타 버전입니다

자바 생기초질문 흑...

EthanChoi 4년 전 조회 1,803

선배님들 자바에서 for문 변수설정시 for문안에 하면 안되는이유가 뭔지아시나요?? 구구단 출력문제입니다

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt(); //3
        //int n = 1; //요건되고
        for(int i = 0; i < 9;i++) {
            int n = 1; //요건왜 안될까요??
            System.out.println(N + " * " + n + " = " + (N * n));
            n++;     
        }
        
    }
}

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

4년 전

변수 선언은 한번만 되어야 합니다. int n;

int n = 1;

은 변수 선언과 할당이 같이 되어있는 구문입니다.

 

변수 선언을 for문 안에 넣으면.. 반복문안에 변수 선언이 반복되기 때문에 문제가 됩니다.

 

다음과 같이 하는 것은 가능합니다.

 

int n;

for(int i = 0; i < 9;i++) {
  n = 1; 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

4년 전

왜 신고가 되었는지는 모르겠지만,

 

가장 기초적인 질문이네요.

 

for 문안에 n=1 로 하고, n++로 증가해도 항상 n값은 1이되니,  문법적으로는 문제가 없지만,  런타임시 실제로 원하는 값이 안나오는 것이죠.

 

자바 기초 문법강의를 더 많이 보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인