Gson将String转为二维数组并循环判断第一列为0,将第二列乘100再放入二维数组
时间: 2023-12-14 11:36:37 浏览: 92
假设你的字符串是以下格式的二维数组:
```
String json = "[[1,2],[0,4],[1,3],[0,6]]";
```
你可以使用 Gson 将其转换为一个 `JsonElement` 对象,然后再通过 `Gson` 对象将其转换为一个二维数组:
```java
Gson gson = new Gson();
JsonElement element = gson.fromJson(json, JsonElement.class);
if (element.isJsonArray()) {
JsonArray jsonArray = element.getAsJsonArray();
int[][] array = new int[jsonArray.size()][2];
for (int i = 0; i < jsonArray.size(); i++) {
JsonArray subArray = jsonArray.get(i).getAsJsonArray();
array[i][0] = subArray.get(0).getAsInt();
array[i][1] = subArray.get(1).getAsInt();
if (array[i][0] == 0) {
array[i][1] *= 100;
}
}
}
```
这里使用了 `JsonElement` 对象来接受转换后的结果,因为我们不确定它是否是一个数组。如果是一个数组,我们就可以强制转换为 `JsonArray` 对象,并对其中的每个子数组进行处理。最后,我们将每个子数组的第一列与 `0` 进行比较,如果相等,我们就将第二列乘以 `100`。
阅读全文