繁体   English   中英

如何返回 Json 的第一个和最后一个元素

[英]How To Return First And Last Element Of Json

使用 gson 如何从我的 json 返回第一个和最后一个元素,以便以这种格式获取数据?

System.out.println("Student: BobGoblin - result: 59");

我试过了,但它仍然返回完整的 JSON 对象

JsonObject jsonObject = new Gson().fromJson(content.toString(), JsonObject.class);
return jsonObject.get(domain) + " - " + jsonObject.get(result.toString());

首先:toJson 将某些内容转换json。 您想将 json 转换为某种对象。 所以改用fromJson

其次构建一个对象,您可以将数据放入其中。 gson 的手册站点上有很多示例: https : //github.com/google/gson/blob/master/UserGuide.md

让我为你编码。 这并不难:

import java.util.Map;

import com.google.gson.Gson;

public class GsonTest {

    public static void main(String args[]) {

      Gson gson = new Gson();

      String json = "{\"name\":\"Bog\", \"foo\":\"bar\", \"result\": 59}";

      // Using a map
      @SuppressWarnings( "unchecked" )
      Map<String,Object> map = gson.fromJson( json, Map.class );
      System.out.println( "Name: " + map.get( "name" ) + " result: " + map.get( "result" ) );

      // Better: using an object
      Student student = gson.fromJson( json, Student.class );
      System.out.println( "Name: " + student.name + " result: " + student.result );

    }

    public static class Student {
        public String name;
        public String foo;
        public int result;
    }
}

这将导致:

Name: Bog result: 59.0
Name: Bog result: 59

一般的方法是:将json字符串放入某种java对象中。 然后访问该 java 对象以获取您的数据。

请注意,您可以更好地控制使用第二种方法接收的数据类型。 由于 json 没有指定数据类型,解析器在第二个示例中使用int时猜测年龄是float/double因为类是这样说的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM