ホームページ  >  記事  >  Java  >  Java で変数名を動的に作成できますか?

Java で変数名を動的に作成できますか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-30 22:15:30765ブラウズ

Can you Dynamically Create Variable Names in Java?

Java での動的な変数の名前付け

Java では、文字列値を使用して変数名を動的に作成することはできません。一部のスクリプト言語に存在するこの概念は、Java の厳密に型指定されたシステムではサポートされていません。

代わりに、Java は変数参照を利用してオブジェクトにアクセスします。一般的なアプローチは、HashMap:

Map<String, Dog> dogMap = new HashMap<>();
dogMap.put("Fido", new Dog("Fido"));
Dog myPet = dogMap.get("Fido");

などの Map を使用することです。これにより、文字列キー (「Fido」など) を Dog オブジェクトに関連付けることができます。その後、対応する String キーに基づいて特定のオブジェクトにアクセスできます。

動的オブジェクト名に関する懸念については、Java の変数名は実際のオブジェクトそのものではなく、オブジェクトへの参照を表すことを覚えておくことが重要です。オブジェクトへの参照がある限り、変数名に関係なくアクセスできます。

たとえば、「myDog」という名前の変数によって参照される「Fido」という名前の犬がある場合、次のようにすることができます。同じオブジェクトを「spot」という名前の別の変数に割り当てます:

Dog myDog = new Dog("Fido");
Dog spot = myDog; // spot and myDog now reference the same object

オブジェクトに一意の識別子を与えるには、クラス自体内で name プロパティを定義できます:

class Dog {
  private String name;

  public Dog(String name) {
    this.name = name;
  }

  public String getName() {
    return name;
  }
}

これらのテクニックを使用すると、動的な名前を持つオブジェクトを効果的に管理し、この点でのスクリプト言語の制限を回避できます。

以上がJava で変数名を動的に作成できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。