首先,分别运行下面两段json和fastjson的代码:

import org.json.JSONException;
import org.json.JSONObject;public class Jsons {public static void main(String[] args) throws JSONException {JSONObject jsons = new JSONObject();jsons.put("key","123");System.out.println("#1:"+ jsons.toString());System.out.println("#2:"+ new JSONObject().put("key", "123").toString());}
}
import com.alibaba.fastjson.JSONObject;public class FastJsons {public static void main(String[] args) {JSONObject fastJsons = new JSONObject();fastJsons.put("kye", "456");System.out.println("#1:" + fastJsons.toString());System.out.println("#2:" + new JSONObject().put("key:", "456").toString() );}}

观察两个类,貌似没有什么区别,但是运行之后,控制台打印的结果却是:

// json
#1:{"key":"123"}
#2:{"key":"123"}
// fastjson
#1:{"kye":"456"}
Exception in thread "main" java.lang.NullPointerExceptionat day1.FastJsons.main(FastJsons.java:11)

我们发现fastjson中报了异常,然后我们来查看各自put()源码:

// json
/*      */   public JSONObject put(String key, Object value)
/*      */     throws JSONException
/*      */   {
/* 1069 */     if (key == null) {
/* 1070 */       throw new JSONException("Null key.");
/*      */     }
/* 1072 */     if (value != null) {
/* 1073 */       testValidity(value);
/* 1074 */       map.put(key, value);
/*      */     } else {
/* 1076 */       remove(key);
/*      */     }
/* 1078 */     return this;
/*      */   }
// fastjson
/*     */   public Object put(String key, Object value) {
/* 316 */     return map.put(key, value);
/*     */   }

转载于:https://www.cnblogs.com/52liming/p/9537981.html

比较json和fastjson的put()相关推荐

  1. Json的FastJson与Jackson

    FastJson 需要引入 fastjson-1.2.40.jar包 FastJson的介绍 JSON协议使用方便,越来越流行,JSON的处理器有很多,这里我介绍一下FastJson,FastJson ...

  2. 生成JSON数据--fastjson(阿里)方法

    fastjson(阿里)方法生成JSON数据: 与Gson类似,创建相应类,再使用JSON.toJSONString()添加对象 要求:生成如下JSON数据 1.{"age":3, ...

  3. Struts2.0第三章(文件上传、ajax开发、json、Fastjson、Jackson、注解开发)

    Struts2.0文件上传: 浏览器端注意事项: 1.表单提交方式method = post: 2.表单中必须有一个<input type="file" name = &qu ...

  4. Android中的JSON解析方式:json; Gson ; Fastjson

    本文主要介绍Json数据的解析 ----a,json数据的介绍 ----b,json数据的解析 ----c,gson数据的解析,谷歌公司的一种格式 ----d,fastjson数据的解析,阿里巴巴的一 ...

  5. Android之JSON处理器FastJson

    FastJson fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发 主要特点: 快速FAST (比其它任何基于Java的解析器和生成器更快, ...

  6. 【JSON】FastJson 打印输格式化输出

    1.概述 1.1 Java示例代码 导入的包: com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import co ...

  7. JSON与fastjson

    JSON(JavaScriptObject Notation)是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming Langu ...

  8. Java的JSON处理器fastjson使用详解

    fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发. 主要特点: 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackso ...

  9. 阿里巴巴Json工具-Fastjson教程

    首先我们要了解JSON是什么? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js ...

最新文章

  1. RxJava 内置多种用于调度的线程类型
  2. Java学习路线图,如何学习Java事半功倍?
  3. (6)kendo UI使用基础介绍与问题整理——dropdownlist/基础问题整理
  4. 全国计算机等级考试题库二级C操作题100套(第23套)
  5. 行为设计模式:中介者
  6. lua安全之关于lua扩展第三方库
  7. mongodb索引生成HTML页面,mongodb高阶:索引创建、聚合查询、复制集、分片、创建备份和部署...
  8. capjoint一些生成文件的解释
  9. 在多媒体计算机中静态媒体是指,《多媒体技术及应用》按章复习题
  10. Windows Server 2008 R2 官方原版下载大全
  11. 电脑正下方显示桌面和计算机,电脑桌面下方的显示栏怎么设置
  12. mysql-8.0.18免安装版安装过程
  13. Comet OJ - Contest #5 迫真小游戏
  14. iTunes Connect 上架 -- App store 搜索不到 解决方法
  15. msapro-note
  16. LumaQQ启动脚本
  17. SSL证书-NginX安装指南
  18. ORACLE-023:令人烦恼的 ora-01722 无效数字
  19. table宽度比tbody宽度大4px
  20. 解决联想Thinkpad E430光盘或U盘无法启动重装系统(关闭 UEFI)

热门文章

  1. Java中JDBC连接数据库(MySQL)
  2. 华威、剑桥与三星联合提出基于时间核一致性的盲视频超分辨率
  3. 短视频生产利器!视频裁剪之横屏转竖屏新技术,出自腾讯多媒体实验室
  4. ICCV 2019 Oral | 三维ZAO脸,单张图片估计人脸几何,效果堪比真实皮肤
  5. 仅用10个月!中国高中生拿下Kaggle Master,怎么做到的?
  6. ResNet及其变种的结构梳理、有效性分析与代码解读(PyTorch)
  7. java 线程强制退出程序_Java程序在线程完成之前退出。我如何让Cucumber-JVM等待线程退出?...
  8. 那些用起来很爽,但用不好可能会被人打的Python骚操作
  9. 收藏 | 机器学习、深度学习调参手册
  10. PyTorch Mobile已支持Android!