Skip to content
This repository was archived by the owner on Sep 4, 2025. It is now read-only.

Commit e873230

Browse files
authored
added better way for asJsonArray
1 parent 3af014b commit e873230

1 file changed

Lines changed: 11 additions & 9 deletions

File tree

config/json/src/main/java/de/eztxm/ezlib/config/object/ObjectConverter.java

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -98,26 +98,28 @@ public JsonObject asJsonObject() {
9898
}
9999
}
100100

101-
public JsonArray<?> asJsonArray() {
101+
public <T> JsonArray<T> asJsonArray(Class<T> clazz) {
102102
try {
103-
if (object instanceof JsonArray jsonArray) {
104-
return jsonArray;
103+
if (object instanceof JsonArray<?> jsonArray) {
104+
@SuppressWarnings("unchecked")
105+
JsonArray<T> casted = (JsonArray<T>) jsonArray;
106+
return casted;
105107
}
106108
if (object instanceof String jsonStr) {
107-
return JsonArray.parse(jsonStr, Object.class);
109+
return JsonArray.parse(jsonStr, clazz);
108110
}
109111
if (object instanceof List<?> list) {
110-
JsonArray<Object> arr = new JsonArray<>();
112+
JsonArray<T> arr = new JsonArray<>();
111113
for (Object item : list) {
112-
arr.add(item);
114+
arr.add(clazz.cast(item));
113115
}
114116
return arr;
115117
}
116-
JsonArray<Object> arr = new JsonArray<>();
117-
arr.add(object);
118+
JsonArray<T> arr = new JsonArray<>();
119+
arr.add(clazz.cast(object));
118120
return arr;
119121
} catch (Exception e) {
120122
return null;
121123
}
122124
}
123-
}
125+
}

0 commit comments

Comments
 (0)