小编lin*_*sax的帖子

如何防止Gson将长号(json字符串)转换为科学记数法格式?

我需要将json字符串转换为java对象并将其显示为long.json字符串是一个固定的长数组:

{numbers
[ 268627104, 485677888, 506884800 ] }
Run Code Online (Sandbox Code Playgroud)

转换的代码在所有情况下都可以正常工作,除了以0结尾的数字.它将这些转换为科学记数字格式:

   public static Object fromJson(HttpResponse response, Class<?> classOf)
    throws IOException {
    InputStream instream = response.getResponseInputStream();                   

    Object obj = null;
    try {
        Reader reader = new InputStreamReader(instream, HTTP.UTF_8);

        Gson gson = new Gson();

        obj = gson.fromJson(reader, classOf); 

        Logger.d(TAG, "json --> "+gson.toJson(obj));
    } catch (UnsupportedEncodingException e) {
        Logger.e(TAG, "unsupported encoding", e);
    } catch (Exception e) {
        Logger.e(TAG, "json parsing error", e);
    }

    return obj;
}
Run Code Online (Sandbox Code Playgroud)

实际结果:Java对象:268627104,485677888,5.068848E + 8

请注意,最后一个数字将转换为科学记数法格式.任何人都可以建议可以做些什么来解决它或阻止或撤消它?我正在使用Gson v1.7.1

java json gson

27
推荐指数
5
解决办法
3万
查看次数

如果在整数列表上有一个迭代器,如何在偶数上返回迭代器?

我在java采访中被问到这个问题.我给了一个整数列表的迭代器.我需要编写一个函数,返回将此迭代器作为参数,并仅返回偶数的迭代器.有人告诉我,我不能修改原始的数字列表.因此,从列表中删除奇数不是解决方案.请指教.谢谢.

java iterator

3
推荐指数
1
解决办法
2345
查看次数

标签 统计

java ×2

gson ×1

iterator ×1

json ×1