当前位置: 首页 > news >正文

使用hutool将json集合对象转化为对象

集合之间相互转化


//List转Json,maps是List类型的参数
String json = JSONUtil.toJsonStr(maps);
System.out.println("这是json字符串: "+json);

//Json转List
JSONArray objects =JSONUtil.parseArray(json);
List<Map> maps1 = JSONUtil.toList(objects, Map.class);
System.out.println("这是list集合: "+maps1);

对象之间相互转化

import cn.hutool.json.JSONUtil;

public class TestHuTool {
public static void main(String[] args) {
// 创建一个User对象
User user = new User("admin", "123");

// 对象转JSON字符串
String toJsonStr = JSONUtil.toJsonStr(user);
System.out.println(toJsonStr);

// JSON字符串转对象
User toBean = JSONUtil.toBean(toJsonStr, User.class);
System.out.println(toBean);
}
}

class User {
private String username;
private String password;

public User(String username, String password) {
this.username = username;
this.password = password;
}

@Override
public String toString() {
return "User{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
在这个示例中,我们首先创建了一个User对象,然后使用JSONUtil.toJsonStr方法将其转换为JSON字符串。接着,我们使用JSONUtil.toBean方法将JSON字符串转换回User对象。

使用Convert类进行转换

HuToolConvert类提供了更多类型的转换功能,包括字符串与其他类型之间的转换。以下是一些常见的转换示例:

import cn.hutool.core.convert.Convert;

public class TestConvert {
public static void main(String[] args) {
// 字符串转整数
int intValue = Convert.toInt("123");
System.out.println(intValue);

// 字符串转日期
String dateStr = "2021-01-01";
Date date = Convert.toDate(dateStr);
System.out.println(date);

// 字符串转集合
String[] strArray = {"1", "2", "3"};
List<Integer> intList = Convert.toList(Integer.class, strArray);
System.out.println(intList);
}
}
http://www.dtcms.com/a/47429.html

相关文章:

  • 02_NLP文本预处理之文本张量表示法
  • SpringBoot3—核心特性:基础特性
  • Spring 原理(很多面试题)
  • (下:补充——五个模型的理论基础)深度学习——图像分类篇章
  • 【星云 Orbit • STM32F4】03g. 按键玩法七:矩阵键盘单个触发
  • 迷你世界脚本方块接口:Block
  • 力扣hot 100之矩阵四题解法总结
  • 博客系统--测试报告
  • 基于SpringBoot和PostGIS的各省与地级市空间距离分析
  • 17、什么是智能指针,C++有哪几种智能指针【高频】
  • C#使用技巧
  • Deepseek+RAGFLOW部署教程
  • 计算机毕业设计SpringBoot+Vue.js在线课程管理系统(源码+文档+PPT+讲解)
  • JVM常用概念之垃圾回收设计与停顿
  • 学习C++常用词汇词组及缩写汇总
  • Node.js二:第一个Node.js应用
  • 蓝桥备赛(六)- C/C++输入输出
  • 在Spring Boot项目中将中文转换为拼音:从入门到实践
  • Hive之正则表达式
  • flink web ui未授权漏洞处理
  • 【行政区划获取】
  • 专业工具,杜绝一切垃圾残留!
  • surfaceflinger对INVALIDATE和REFRESH消息的处理
  • 解锁网络防御新思维:D3FEND 五大策略如何对抗 ATTCK
  • 突破Ajax跨域困境,解锁前端通信新姿势
  • Ubuntu20.04下各类常用软件及库安装汇总(联想Y9000P24款)
  • 【MySQL】数据库初识
  • 【计算机网络入门】初学计算机网络(四)
  • 从递归到动态规划(三维)
  • Excel工作圈小工具一个集合了大量Excel功能的绿色工具软件