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

Java开发最常用的工具类/实用类详解

本文详细讲解Java开发最常用的工具类/实用类包含Arrays、Math、System、Runtime、Object、Collections、BigDecimal、Date、SimpleDateFormat、LocalDate/LocalDateTime等。一、Arrays 数组工具类专门用于操作数组提供排序、查找、转字符串、转集合等功能。importjava.util.Arrays;importjava.util.List;publicclassArraysDemo{publicstaticvoidmain(String[]args){int[]arr{3,1,4,2,5};// 1. 数组排序Arrays.sort(arr);// 2. 数组转字符串打印数组System.out.println(Arrays.toString(arr));// 3. 二分查找必须先排序intindexArrays.binarySearch(arr,3);// 4. 数组填充Arrays.fill(arr,10);// 5. 数组转集合String[]strArr{Java,Python};ListStringlistArrays.asList(strArr);}}二、Math 数学工具类提供数学运算绝对值、四舍五入、随机数、开方、幂运算等。publicclassMathDemo{publicstaticvoidmain(String[]args){// 绝对值Math.abs(-10);// 最大值、最小值Math.max(10,20);Math.min(10,20);// 向上取整、向下取整、四舍五入Math.ceil(3.14);Math.floor(3.14);Math.round(3.14);// 随机数 [0,1)Math.random();// 幂运算、开平方Math.pow(2,3);Math.sqrt(16);}}三、System 系统工具类获取系统信息、退出JVM、数组拷贝、获取时间戳。publicclassSystemDemo{publicstaticvoidmain(String[]args){// 1. 获取当前时间戳毫秒longtimeSystem.currentTimeMillis();// 2. 快速数组拷贝效率最高int[]a{1,2,3};int[]bnewint[3];System.arraycopy(a,0,b,0,3);// 3. 退出JVM// System.exit(0);// 4. 垃圾回收System.gc();}}四、Runtime 运行时类获取JVM内存信息、执行系统命令。publicclassRuntimeDemo{publicstaticvoidmain(String[]args){RuntimeruntimeRuntime.getRuntime();// 获取最大内存、空闲内存runtime.maxMemory();runtime.freeMemory();// 获取CPU核心数System.out.println(runtime.availableProcessors());}}五、BigDecimal 高精度计算类解决浮点数运算精度丢失问题电商、金融项目必用。importjava.math.BigDecimal;publicclassBigDecimalDemo{publicstaticvoidmain(String[]args){BigDecimalb1newBigDecimal(0.1);BigDecimalb2newBigDecimal(0.2);// 加法BigDecimaladdb1.add(b2);// 减法BigDecimalsubb1.subtract(b2);// 乘法BigDecimalmulb1.multiply(b2);// 除法保留2位小数四舍五入BigDecimaldivb1.divide(b2,2,BigDecimal.ROUND_HALF_UP);}}六、日期时间工具类1. 传统日期类 Date SimpleDateFormatimportjava.text.SimpleDateFormat;importjava.util.Date;publicclassDateDemo{publicstaticvoidmain(String[]args){// 当前时间DatedatenewDate();// 格式化日期SimpleDateFormatsdfnewSimpleDateFormat(yyyy-MM-dd HH:mm:ss);Stringformatsdf.format(date);// 字符串转日期// Date parse sdf.parse(2026-01-01 12:00:00);}}2. Java8 全新日期类线程安全、功能强大、无bugimportjava.time.LocalDate;importjava.time.LocalDateTime;importjava.time.format.DateTimeFormatter;publicclassJava8TimeDemo{publicstaticvoidmain(String[]args){// 当前日期、时间LocalDatenowDateLocalDate.now();LocalDateTimenowTimeLocalDateTime.now();// 格式化DateTimeFormatterdtfDateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss);StringformatnowTime.format(dtf);}}七、Objects 对象工具类提供对象空指针安全操作开发高频使用。importjava.util.Objects;publicclassObjectsDemo{publicstaticvoidmain(String[]args){Stringstrnull;// 安全判断nullObjects.isNull(str);Objects.nonNull(str);// 安全equals避免空指针Objects.equals(str,test);// 非空校验Objects.requireNonNull(str,对象不能为空);}}八、Collections 集合工具类专门用于操作集合排序、打乱、反转、最值、同步集合。importjava.util.ArrayList;importjava.util.Collections;importjava.util.List;publicclassCollectionsDemo{publicstaticvoidmain(String[]args){ListIntegerlistnewArrayList();list.add(3);list.add(1);list.add(2);// 排序Collections.sort(list);// 反转Collections.reverse(list);// 打乱Collections.shuffle(list);// 最值Collections.max(list);Collections.min(list);}}九、StringUtils 字符串工具类commons-lang3第三方最常用字符串工具类项目必备// 判断空字符串null、、 都算空StringUtils.isBlank(str);StringUtils.isNotBlank(str);// 判断是否为空StringUtils.isEmpty(str);// 去除空格StringUtils.trim(str);十、BeanUtils 对象拷贝工具类快速拷贝对象属性开发效率神器// 源对象 - 目标对象BeanUtils.copyProperties(sourceObj,targetObj);我是双栈小码哥点赞收藏关注希望本文能对您的学习和工作有所帮助。
http://www.gsyq.cn/news/1388918.html

相关文章:

  • ARM架构PMSELR寄存器与性能监控实践
  • [智能体-73]:智能体编排核心难点:可复用任务分解落地方法论
  • 三相异步电机调压调速,除了Simulink仿真还能怎么学?聊聊原理、局限与工程取舍
  • DESK的文件搜索比Windows方便在哪几点?
  • AirPodsDesktop终极指南:在Windows上解锁苹果耳机的完整体验
  • 2026年实用降AI率软件:亲测AI率从90%降至4%的稳妥方案
  • ON DELETE CASCADE 原理与安全实践:从数据依附性到生产级联防控
  • 2026 合肥本地黄金回收 正规门店 无折旧费 全程透明 - 合扬奢侈品交易中心
  • 机器学习增强采样:从玻尔兹曼生成器到自由能计算实战
  • CefFlashBrowser:让经典Flash内容重获新生的专业解决方案
  • Windows右键菜单终极管理指南:ContextMenuManager让你的右键菜单焕然一新
  • NVIDIA Profile Inspector:解锁显卡200+隐藏设置的游戏性能优化神器
  • 破解Zotero中文文献管理难题:Jasminum插件实战指南
  • Unity2D塔防核心骨架:路径寻路、塔基绑定与波次调度
  • ContextMenuManager:免费强大的Windows右键菜单终极清理工具
  • 5分钟快速上手:TMSpeech离线实时语音转文字完整指南
  • AMD Ryzen系统调试终极指南:从故障排除到性能优化的完整实用手册
  • 3个技术魔法让经典魔兽争霸在Windows 11上焕发新生
  • Blender 3MF插件:在3D打印工作流中实现CAD与CAM的无缝衔接
  • OBS多平台直播推流插件:免费实现多平台同时直播的终极指南
  • 开源AMD Ryzen调试神器:SMUDebugTool深度解析与实用指南
  • 毕业设计 深度学习yolo藻类细胞检测识别(科研辅助系统)(源码+论文)
  • JMeter性能测试实战:从脚本编写到三维归因分析
  • FModel深度解析:UE4/UE5资源逆向与UAsset二进制解码原理
  • MOVEit真实漏洞应急响应与安全加固指南
  • Smurf攻击原理与Wireshark实战分析:ICMP反射防御指南
  • Godot PCK解包实战:从热更新卡顿到资源审计的完整指南
  • CVE-2024-7347深度解析:HTTP/2协议层漏洞的端到端协同防护
  • Unity倾斜摄影插件选型指南:OSGB与3DTiles实战避坑
  • 3步永久保存微信聊天记录:开源工具完整备份指南