자바에서 변수에 동적 이름 할당하기

조회수 7155회

자바에서 여러 개의 변수에 다음과 같이 값을 할당하고 싶어요.

int n1,n2,n3;

for(int i=1;i<4;i++)
{
    n<i> = 5;
}

자바에서 어떻게 할 수 있죠?

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    작성하신 코드는 자바에서 작업하신 것 같지 않네요. 자바에는 동적변수가 존재하지 않습니다. 자바에서의 변수는 반드시 소스 코드상에서(*) 선언되어야 합니다.

    질문자님께서 원하는 작업을 처리하려면 List 혹은 Map을 사용하셔야 합니다. 예를 들자면 이렇게요.

    int n[] = new int[3];
    for (int i = 0; i < 3; i++) {
        n[i] = 5;
    }
    
    List<Integer> n = new ArrayList<Integer>();
    for (int i = 1; i < 4; i++) {
        n.add(5);
    }
    
    Map<String, Integer> n = new HashMap<String, Integer>();
    for (int i = 1; i < 4; i++) {
        n.put("n" + i, 5);
    }
    

    *-위 설명이 약간 잘못되었네요. BCEL 이나 ASM을 사용하신다면 bytecode 파일 내에서 변수 선언이 가능합니다. 그러나 좋지 않은 방법이니 사용하지 마십쇼.

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

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.