我正在尝试使用 Android 的 Moshi 库将 Java 对象转换为 JSON。该对象包含类型的属性
数组列表 <浮点[]>
我正在注册以下适配器来转换对象。
Type type = Types.newParameterizedType
(List.class, HistoryPath.class, ArrayList.class, Float[].class, Float.class);
JsonAdapter<Drawing> adapter = moshi.adapter(type);
String json = adapter.toJson(drawing);
“toJson”方法失败,出现以下异常:
java.lang.IllegalArgumentException:平台 java.util.ArrayList annotated [] 需要在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter.java:50) 在 com.squareup.moshi.Moshi.adapter( Moshi.java:99) 在 com.squareup.moshi.ClassJsonAdapter$1.createFieldBindings(ClassJsonAdapter.java:90) 在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter.java:74) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.ClassJsonAdapter$1.createFieldBindings(ClassJsonAdapter.java:90) 在 com.squareup.moshi.ClassJsonAdapter$1.create(ClassJsonAdapter .java:74) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:99) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:57) 在 com.squareup.moshi.CollectionJsonAdapter.newArrayListAdapter(CollectionJsonAdapter.java:51) 在 com.squareup.moshi.CollectionJsonAdapter$1.create(CollectionJsonAdapter.java:35) 在 com.squareup.moshi.Moshi.adapter(Moshi. java:99) 在 com.squareup.moshi.Moshi.adapter(Moshi.java:57)squareup.moshi.CollectionJsonAdapter$1.create(CollectionJsonAdapter.java:35) at com.squareup.moshi.Moshi.adapter(Moshi.java:99) at com.squareup.moshi.Moshi.adapter(Moshi.java:57)squareup.moshi.CollectionJsonAdapter$1.create(CollectionJsonAdapter.java:35) at com.squareup.moshi.Moshi.adapter(Moshi.java:99) at com.squareup.moshi.Moshi.adapter(Moshi.java:57)
我认为我的类型定义是错误的,但我似乎找不到正确的值