Q: 문자열 값을 사용하여 변수 이름을 동적으로 만들 수 있습니까? Java?
예를 들어 다음 코드가 주어진 경우:
<code class="java">String name = "dog"; dog name = new dog();</code>
Java에게 "name"을 문자열로 해석하고 이를 새로 생성된 "dog" 개체에 할당하도록 어떻게 지시할 수 있습니까?
답: PHP와 같은 일부 스크립트 언어는 이러한 동작을 허용하지만 Java는 그렇지 않습니다. Java에서 변수 이름은 특정 개체에 대한 액세스를 제공하는 변수 참조와 다릅니다.
원하는 기능을 달성하는 한 가지 방법은 맵을 활용하여 문자열을 개체와 연결하는 것입니다. 예를 들면 다음과 같습니다.
<code class="java">Map<String, Dog> dogMap = new HashMap<>(); dogMap.put("Fido", new Dog("Fido")); Dog myPet = dogMap.get("Fido");</code>
또는 배열, ArrayList, LinkedList 및 기타 컬렉션과 같은 객체에 대한 참조를 얻는 다양한 방법이 있습니다.
추가 설명:
생성 이후에도 지속되는 임의의 이름으로 객체를 동적으로 생성하는 것이 목표라면 변수 이름이 "객체 이름"과 동의어가 아니라는 점을 이해하는 것이 중요합니다. "fido"와 "spot" 변수 모두 이름은 다르지만 동일한 개체에 대한 참조를 보유합니다.
<code class="java">Dog fido = new Dog; Dog spot = fido; // now fido and spot refer to the same object</code>
각 개체에 "이름"을 할당하려면 "이름" 속성을 추가하는 것이 좋습니다.
<code class="java">class Dog { private String name; public Dog(String name) { this.name = name; } public String getName() { return name; } }</code>
이를 통해 각 Dog 객체는 고유한 이름을 가질 수 있습니다.
위 내용은 문자열 값을 사용하여 Java에서 변수 이름을 동적으로 생성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!