当前位置: 首页 > 知识库问答 >
问题:

如何解析没有键的对象

滕令雪
2023-03-14

我有以下疑问:

public List<Object> findNearbyGangs(double lat, double lng, double distance) {
    Query query = this.entityManager.createNativeQuery("SELECT id, (6371 * acos (cos(radians(:latitude)) * cos(radians(latitude)) * cos(radians(longitude) - radians(:longitude))  + sin(radians(:latitude)) * sin(radians(latitude)))) AS distance FROM Gang g GROUP BY id HAVING distance < :distance ORDER BY distance")
        .setParameter("latitude", lat)
        .setParameter("longitude", lng)
        .setParameter("distance", distance);

    List<Object> objects = query.getResultList();
    return objects;
}

对象包含

[
    [
        3,
        0
    ],
    [
        321,
        0
    ],
    [
        353,
        1.3575295456440253
    ]
]

共有1个答案

邹慈
2023-03-14

我想出来了:

public List<NearbyGang> getNearbyGangs(Double longitude, Double latitude, int radius) {
        List<Object> nearbyGangsFromDatabase = this.gangRepositoryImpl.findNearbyGangs(longitude, latitude, radius);
        List<NearbyGang> nearbyGangs = new ArrayList<NearbyGang>();
        for (Object object : nearbyGangsFromDatabase) {
            Class oClass = object.getClass();
            if (oClass.isArray()) {
                for (int i = 0; i < Array.getLength(object); i++) {
                    BigInteger gangId = (BigInteger) Array.get(object, 0);
                    Gang gang = this.getById(gangId.longValue()).get();

                    Double distance = (Double) Array.get(object, 1);

                    NearbyGang nearbyGang = new NearbyGang(gang, distance);
                    nearbyGangs.add(nearbyGang);
                }
            }
        }
        return nearbyGangs;
    }
 类似资料:
  • 我正在尝试解析没有数组名的json结果。以下是我的json回复: 如何使用库?

  • json文档如下所示。我想在qml中为它定义一个类,就像typescript中的关键字一样。 我试图定义一个qml类在文件 那就用吧 但是在键下很难处理对象的向量。因为qml不允许在类A下定义类B。 那么有人知道如何定义强类型类来保存qml中从json解析的对象吗?然后我可以在qtcreator中使用自动完成的类。

  • 问题内容: 我正在与Retrofit和GSON合作。我有一个作为JSON数组的JSON响应,但我不知道如何使用模型类来解析它。我的回答如下: 问题答案: 只需在回调中调用字符串列表,它就可以完成工作…

  • 我试图根据我在github中找到的内容创建一个SVM模型,但它不断返回这个错误。 这是我的密码。 这些是csv文件的内容。 谢谢你。

  • 问题内容: 我有一些JSON数据,但所有键都为大写。如何解析它们并将键转换为更低的键?我正在使用jQuery。 例如: JSON数据: 所需的输出: 问题答案: 这个怎么样: 正则表达式捕获键名$ 1并将其转换为小写。 现场演示:http : //jsfiddle.net/bHz7x/1/ [edit]要解决@FabrícioMatté的评论,另一个仅匹配文字字符的演示: http //jsfid

  • 问题内容: 如果对象解构前面没有关键字,为什么会抛出错误? 抛出 以下三个示例可以正常工作 额外的问题:为什么我们不需要数组解构? 我在做类似的事情时遇到了问题 问题答案: 问题源于运算符在JavaScript中具有多种含义。 当出现在 Statement 的开头时,它将始终代表一个块,该块不能分配给该块。如果它稍后在 Statement中 作为Expression出现,则它将表示一个Object