1. ホーム
  2. java

Javaにおける#define

2023-07-15 22:56:21

質問

私はJavaでプログラミングを始めていますが、C++に相当するのは #define は存在するのでしょうか。

googleで検索したところ、それはないとのことですが、同じようなものが存在するかどうか、どなたか教えていただけませんか? を教えてください。 私は自分のコードをより読みやすくしようとしています。

の代わりに myArray[0] と書けるようにしたい。 myArray[PROTEINS] を例えば

どのように解決するのですか?

いいえ、プリコンパイラがないためです。しかし、あなたの場合、次のようにすれば同じことが実現できます。

class MyClass
{
    private static final int PROTEINS = 0;

    ...

    MyArray[] foo = new MyArray[PROTEINS];

}

コンパイラは PROTEINS が決して変更されないことに気づき、それをインライン化します。

定数のアクセス修飾子はここでは重要でないことに注意してください。 public または protected のように、複数のクラスで同じ定数を再利用したい場合は、private の代わりに