자바에서 변수에 동적 이름 할당하기
조회수 11119회
자바에서 여러 개의 변수에 다음과 같이 값을 할당하고 싶어요.
int n1,n2,n3;
for(int i=1;i<4;i++)
{
n<i> = 5;
}
자바에서 어떻게 할 수 있죠?
1 답변
-
작성하신 코드는 자바에서 작업하신 것 같지 않네요. 자바에는 동적변수가 존재하지 않습니다. 자바에서의 변수는 반드시 소스 코드상에서(*) 선언되어야 합니다.
질문자님께서 원하는 작업을 처리하려면 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 파일 내에서 변수 선언이 가능합니다. 그러나 좋지 않은 방법이니 사용하지 마십쇼.
댓글 입력