2

PropertyUtils の getProperty に使用されるインデックス付き表記を使用して、マップ値として含まれるリスト内の要素を取得しようとしています。以下に例を示します (ここでは一般的な構文を使用しています)。

map = {"aList": ["elem1", "elem2", "elem3"]}

たとえば、値「elem2」を取得したい場合、次を使用してそれを実行しようとしています:

PropertyUtils.getProperty(map, "aList[1]");

しかし、うまくいかないようです。私は常にヌル値を取得します。これを行う別の方法はありますか。明確にするために、(もちろん明示的にキャストした後)できることはわかってgetProperty("aList").get(0)いますが、上記のコードが機能する必要があるソリューションに取り組んでいます。

4

1 に答える 1

6

わかりましたので、私はそれを理解しました。以下のコードは、私が望んでいたように機能します。

PropertyUtils.getProperty(map, "(aList)[1]");

このドキュメンテーションに基づいて、私がここで行っていることは、それaListがキーであり、Bean のインデックス付きプロパティではないことを指定していることだと思います。そんな感じ。

于 2012-05-25T03:27:24.627 に答える