java - 将包含对的 JSON 数组转换为点列表

标签 java json jackson

我有以下 JSON:

{
  "points": [88,223,88,223,91,223]
}

我需要使用Jackson将其映射到我的以下类:

public MyClass {
    public List<Point2D.Float> points;
}

我怎样才能做到这一点?

最佳答案

首先,使用您选择的 JSON 解析器(显然是 Jackson)解析 JSON。

其次,迭代列表/数组,一次 2 个值,例如

public static List<Point2D.Float> toPoints(List<Float> coords) {
    List<Point2D.Float> points = new ArrayList<>();
    for (Iterator<Float> iter = coords.iterator(); iter.hasNext(); )
        points.add(new Point2D.Float(iter.next(), iter.next()));
    return points;
}

测试

System.out.println(toPoints(List.of(88f, 223f, 88f, 223f, 91f, 223f)));

输出

[Point2D.Float[88.0, 223.0], Point2D.Float[88.0, 223.0], Point2D.Float[91.0, 223.0]]

关于java - 将包含对的 JSON 数组转换为点列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58840572/

相关文章:

java - Spring 启动2.2.2 : Jackson serializer for custom pagination doesn't work

java - 在 java 的选项卡中添加 onItemSelected

ruby-on-rails - Rails 在模型中渲染 json 部分

c# - HttpClient POST 到 WCF 返回 400 错误请求

ios - 如何在 swift 从 Facebook SDK 解析 JSON 时检索分值

java - 如何以编程方式配置 Jersey 以使用 Jackson 进行 JSON(反)序列化?

java - 创建 Java 枚举

java - 尝试从列表中查找倒数第 n 个元素(使用文件输入)

java - 有没有一种方法可以知道是否有多个 Spring Context 正在使用?

java - 使用 GSON 或 Jackson 将 JSON 反序列化为具有通用参数的类