关于使用JSON.toJSONString(参数1,参数2)

Sku基本类如下

public class Sku {
    // 编号
    private Integer skuId;
    // 商品名称
    private String skuName;
    // 单价
    private Double skuPrice;
    // 购买个数
    private Integer totalNum;
    // 总价
    private Double totalPrice;
    // 商品类型
    private Enum skuCategory;

    //全参 无参 构造器

    //插入基本的set get方法

    @Override
    public String toString() {
        return "Sku{" +
                "skuId=" + skuId +
                ", skuName='" + skuName + '\'' +
                ", skuPrice=" + skuPrice +
                ", totalNum=" + totalNum +
                ", totalPrice=" + totalPrice +
                ", skuCategory=" + skuCategory +
                '}';
    }
}

测试类

   @Test
   public void findFirstTest(){
       Optional<Sku> optional = list.stream()
               .findFirst();
       System.out.println("结果1----optional = " + optional.get());
       System.out.println("----------");
       System.out.println(“结果2----+JSON.toJSONString(optional.get(),false));
       System.out.println("----------");
       System.out.println(“结果3——”+JSON.toJSONString(optional.get(),true));
   }

结果输出

结果1----optional = Sku{skuId=654032, skuName='无人机', skuPrice=4999.0, totalNum=1, totalPrice=4999.0, skuCategory=ELECTRONICS}
----------
结果2----{"skuCategory":"ELECTRONICS","skuId":654032,"skuName":"无人机","skuPrice":4999.0,"totalNum":1,"totalPrice":4999.0}
----------
结果3----{
	"skuCategory":"ELECTRONICS",
	"skuId":654032,
	"skuName":"无人机",
	"skuPrice":4999.0,
	"totalNum":1,
	"totalPrice":4999.0
}

讨论

如果pojo基本类里没有重写toString方法,结果会不会不一样?
——答案:不一样。结果如下。
没写toString,输出会没有结果,如结果1
但此时,JSON.toJSONString却能正常输出
另外,JSON.toJSONString的参数2,决定展示效果
false是结果2
true是结果3

结果1----optional = com.具体路径.cart.Sku@704921a5
----------
结果2----{"skuCategory":"ELECTRONICS","skuId":654032,"skuName":"无人机","skuPrice":4999.0,"totalNum":1,"totalPrice":4999.0}
----------
结果3----{
	"skuCategory":"ELECTRONICS",
	"skuId":654032,
	"skuName":"无人机",
	"skuPrice":4999.0,
	"totalNum":1,
	"totalPrice":4999.0
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`JSON.toJSONString()` 是 Java 中用于将对象转换为 JSON 字符串的方法。它属于 `com.alibaba.fastjson.JSON` 类中的一个静态方法。 以下是 `JSON.toJSONString()` 方法的功能和用法: 1. 将 Java 对象转换为 JSON 字符串:`JSON.toJSONString(Object object)` - 该方法将给定的 Java 对象转换为对应的 JSON 字符串表示形式。 - 例如:`String jsonString = JSON.toJSONString(student);` 2. 设置序列化选项:`JSON.toJSONString(Object object, SerializerFeature... features)` - 该方法可以通过传递一个或多个 `SerializerFeature` 枚举值作为参数,来设置序列化选项。 - 例如:`String jsonString = JSON.toJSONString(student, SerializerFeature.WriteDateUseDateFormat);` 3. 序列化集合类型:`JSON.toJSONString(Collection<?> collection)` - 该方法可以将 Java 集合类型(如 List、Set)转换为对应的 JSON 字符串表示形式。 - 例如:`String jsonString = JSON.toJSONString(studentList);` 4. 序列化数组类型:`JSON.toJSONString(Object[] array)` - 该方法可以将 Java 数组类型转换为对应的 JSON 字符串表示形式。 - 例如:`String jsonString = JSON.toJSONString(studentArray);` 5. 序列化 Map 类型:`JSON.toJSONString(Map<?, ?> map)` - 该方法可以将 Java Map 类型转换为对应的 JSON 字符串表示形式。 - 例如:`String jsonString = JSON.toJSONString(studentMap);` 需要注意的是,在使用 `JSON.toJSONString()` 方法之前,需要在项目中引入 FastJson 库的依赖。 希望这能帮到你!如果你还有其他问题,请随时问我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值