1

渡されたパラメータ名、つまり実行時に渡された名前を取得するにはどうすればよいですか?

例えば:

int mParam = 10;

public void func (int myParam){
 //print wanted name
}

func(mParam);

必要な出力:

mParam

リフレクションを使用して、私はなんとか取得しました:

myParam
4

2 に答える 2

0

Javaではできないと思います。Javaは値渡しを使用してパラメーターを渡すため。したがって、パラメーターを func() に渡すと、変数の値のみが渡されます。

javaのreflect.parameterパッケージを使って、関数で定義されたパラメータについて知ることができます。呼び出している関数のパラメータの詳細を知りたい場合は、この質問を確認 できます Javaリフレクションを使用してメソッドのパラメータ名を取得できますか?

しかし、渡されたパラメータの名前を知ることはできません。

于 2016-03-21T17:46:40.477 に答える
-1

メソッド func を変更して、次のような 2 つのパラメーターを受け取ることができます。

public void func (int myParam, String myParamName){
 //print wanted name
}

または、 Map をパラメーターとして渡す方が良いでしょう:

    public void func (Map<String, Integer> map){
 //print wanted name
}

このようにして、名前付き整数を渡し、メソッドで名前で整数を取得できます

于 2016-03-21T17:56:50.833 に答える