1

必要な型の配列を構築する方法があります。プリミティブ型で機能します。しかし、カスタム オブジェクトの配列がある場合は機能しません。だから私はそれを微調整しました。しかし、それでも失敗します。コードは次のようになります。

    private Object buildArray(  String type,   Object object) {
    final Class<?> requiredType =  loadClass(type);
    final String typeName = type.substring(2).replace(";", "").trim();
        Object[] array = ((Object[]) object);
        ArrayList<Object> arrayList = new ArrayList<Object>(array.length);
        for (Object customObj : array) {
            arrayList.add(castToRequiredType(typeName, customObj));
        }
        return arrayList.toArray();
 }

In this : をクラスのwhere にcastToRequiredTypeキャストします。また、構築する配列の型はです。の配列を動的に構築することに行き詰まっています。CustomObjectCustomTypeCustomTypeCustomTypeCustomType

この方向の助けは大歓迎です。前もって感謝します。

4

2 に答える 2

2

の配列がある場合はObject、 を使用Arrays.copyOfして別の型に変換できます。

CustomType[] ca = Arrays
  .copyOf(array, array.length, CustomType[].class);

于 2011-06-23T11:37:08.453 に答える
1

ありがとう、Axis の Array Util を使用して解決しました。

于 2011-06-23T13:24:42.573 に答える