Java常用的工具类实例代码分析
发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,本文小编为大家详细介绍"Java常用的工具类实例代码分析",内容详细,步骤清晰,细节处理妥当,希望这篇"Java常用的工具类实例代码分析"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习
千家信息网最后更新 2025年11月14日Java常用的工具类实例代码分析
本文小编为大家详细介绍"Java常用的工具类实例代码分析",内容详细,步骤清晰,细节处理妥当,希望这篇"Java常用的工具类实例代码分析"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
一、FileUtils
private static void fileUtilsTest() { try { //读取文件内容 String readFileToString = FileUtils.readFileToString(new File("D:\guor\data\test20211022000000.txt")); System.out.println(readFileToString); //删除文件夹 FileUtils.deleteDirectory(new File("D:\guor1\data1")); FileUtils.deleteQuietly(new File("D:\guor\data")); //清空文件夹 FileUtils.cleanDirectory(new File("D:\guor\data")); //判断文件内容是否一致 boolean contentEquals = FileUtils.contentEquals(new File("D:\guor\data\test20211022000000.txt"), new File("D:\guor\data\testNew20211021000000.txt")); boolean contentEquals2 = FileUtils.contentEquals(new File("D:\guor\data\中文20211021100000.txt"), new File("D:\guor\data\中文New20211022100000.txt")); System.out.println(contentEquals+","+contentEquals2); //拷贝特定类型的文件 FileUtils.copyDirectory(new File("D:\guor\data"), new File("D:\guor\data2"), new FileFilter() { @Override public boolean accept(File pathname) { if(pathname.getName().startsWith("test")) { return true; } return false; } }); FileUtils.moveDirectory(new File("D:\guor\data"), new File("D:\guor\data3")); FileUtils.moveFileToDirectory(new File("D:\guor\data"), new File("D:\guor\data3"), true); FileUtils.moveToDirectory(new File("D:\guor\data"), new File("D:\guor\data4"), true); boolean directoryContains = FileUtils.directoryContains(new File("D:\guor\data"), new File("D:\guor\data\test20211022000000.txt")); System.out.println(directoryContains); directoryContains = FileUtils.directoryContains(new File("D:\guor\data"), new File("*.txt")); System.out.println(directoryContains); //获取某文件夹下特定格式文件 File[] listFiles = new File("D:\guor\data").listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { return name.startsWith("test"); } }); System.out.println(Arrays.toString(listFiles)); //获取系统temp文件夹路径 File tempDirectory = FileUtils.getTempDirectory(); System.out.println(tempDirectory); //获取系统用户文件夹路径 File userDirectory = FileUtils.getUserDirectory(); System.out.println(userDirectory); //查看是否是新建的文件夹 SimpleDateFormat sdf =new SimpleDateFormat("yyyyMMddHHmmss" ); Date parse = sdf.parse("20210206134900"); boolean fileNewer = FileUtils.isFileNewer(new File("D:\guor\data"), parse); System.out.println(fileNewer); //更新文件修改时间,如果不存在,则新建; FileUtils.touch(new File("D:\guor\data\test20211022000000.txt")); //延迟查看文件是否存在 boolean waitFor = FileUtils.waitFor(new File("D:\guor\data\testNew20211021000000.txt"), 5); System.out.println(waitFor); } catch (Exception e) { System.out.println(e); }}//根据文件修改时间排序public static void test02() { String dir = "D:\data"; File[] listFiles = new File(dir).listFiles(); List asList = Arrays.asList(listFiles); for(File file:listFiles) { System.out.println(file); } Collections.sort(asList, new Comparator() { @Override public int compare(File o1, File o2) { if(o1.lastModified()o2.lastModified()) { return 1; }else { return 0; } } }); System.out.println("sort..."); for(File file:listFiles) { System.out.println(file+","+file.lastModified()); }} 二、StringUtil
private static void stringUtilsTest() { String str = "hello world"; //将第一个字符大写 String capitalize = StringUtils.capitalize(str); System.out.println(capitalize);//Hello //两边空格补齐 String center = StringUtils.center(str, 7); System.out.println(center);// hello String center = StringUtils.center(str, 7, "*"); System.out.println(center);//*hello* //chomp剔除字符串最后一个是或或 String chomp = StringUtils.chomp(str); System.out.println(chomp); //chop剔除字符串最后一个字符(如果最后一个是或或也剔除掉) String chop = StringUtils.chop(str); System.out.println(chop);//hello worl //是否包含任意字符 boolean containsAny = StringUtils.containsAny(str, "W"); System.out.println(containsAny); //是否包含任意字符,忽略大小写 containsAny = StringUtils.containsIgnoreCase(str, "W"); System.out.println(containsAny); //有意思 int indexOfAnyBut = StringUtils.indexOfAnyBut(str, "hello orld"); System.out.println(indexOfAnyBut); //两个字符串从第几位开始不同 int indexOfDifference = StringUtils.indexOfDifference(str, str); System.out.println(indexOfDifference); indexOfDifference = StringUtils.indexOfDifference(str, str+"zs"); System.out.println(indexOfDifference); indexOfDifference = StringUtils.indexOfDifference(str, "he llo"); System.out.println(indexOfDifference); //判断是否是正整数 boolean isNumeric = StringUtils.isNumeric(str); System.out.println(isNumeric);//false isNumeric = StringUtils.isNumeric("1234dd"); System.out.println("1234dd:"+isNumeric);//false isNumeric = StringUtils.isNumeric("1234 "); System.out.println("1234 :"+isNumeric);//false isNumeric = StringUtils.isNumeric("1.234"); System.out.println("1.234:"+isNumeric);//false isNumeric = StringUtils.isNumeric("1234"); System.out.println("1234:" + isNumeric);//true isNumeric = StringUtils.isNumeric("-1234"); System.out.println("-1234:" + isNumeric);//false //判断是否是正整数或空格 boolean isNumeric = StringUtils.isNumericSpace(str); //将数组变为字符串,并添加字符进行分割 Object[] array = new Object[] {"zs",18,"男",666,777}; String join = StringUtils.join(array); System.out.println(Arrays.toString(array)); join = StringUtils.join(array, "*"); System.out.println(join); Object[] array = new Object[] {"zs",18,"男",666,777}; String join = StringUtils.join(array, ";", 2, 5); System.out.println(join); String remove = StringUtils.remove(str, "hello"); System.out.println(remove);// world String repeat = StringUtils.repeat(str, 3); System.out.println(repeat);//hello worldhello worldhello world repeat = StringUtils.repeat(str, ",", 3); System.out.println(repeat);//hello world,hello world,hello world //分别替换 String[] list = new String[] {"hello", "girl"}; String[] replacementList = new String[] {"say", "woman"}; String str2 = "hello world,hello boy,hello girl."; String replaceEach = StringUtils.replaceEach(str2, list, replacementList); System.out.println(replaceEach);//say world,say boy,say woman. //只替换第一个匹配的字符串 String replaceOnce = StringUtils.replaceOnce("hello world,hello boy,hello girl.", "hello", "say"); System.out.println(replaceOnce);//say world,hello boy,hello girl. //截取某字符后面的部分 String substringAfterLast = StringUtils.substringAfterLast("hello world,hello boy,hello girl.", " "); System.out.println(substringAfterLast);//girl. String substringBeforeLast = StringUtils.substringBeforeLast("hello world,hello boy,hello girl.", " "); System.out.println(substringBeforeLast);//hello world,hello boy,hello}三、CollectionUtils
private static void collectionUtilsTest() { List list = new ArrayList(); list.add("zhangsan"); list.add("dalian"); list.add("gateway"); list.add("gateway"); list.add("28"); list.add("35"); //查找第一个符合条件的元素 Object find = CollectionUtils.find(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return false; } return true; } }); //排除不符合条件的元素 Collection select = CollectionUtils.select(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return false; } return true; } }); System.out.println(list);//[zhangsan, dalian, 28] System.out.println(find);//zhangsan System.out.println(select);//[zhangsan, dalian] List list2 = new ArrayList(); list2.add("zhangsan"); list2.add("dalian2"); list2.add("282"); //查看两个集合中是否有相同的元素 boolean containsAny = CollectionUtils.containsAny(list, list2); System.out.println(containsAny);//true //查找集合中某元素的个数 int countMatches = CollectionUtils.countMatches(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return true; } return false; } }); System.out.println(countMatches); //查找集合中是否存在某元素 boolean exists = CollectionUtils.exists(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return true; } return false; } }); System.out.println(exists); //删除集合中的某些元素 System.out.println(list);//[zhangsan, dalian, 打法, 28, 35] CollectionUtils.filter(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return false; } return true; } }); System.out.println(list);//[zhangsan, dalian, 打法] //查找集合中符合条件的第一个元素 Object find = CollectionUtils.find(list, new Predicate() { @Override public boolean evaluate(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { return false; } return true; } }); System.out.println(find);//zhangsan //闭包回调函数 System.out.println(list); CollectionUtils.forAllDo(list, new Closure() { @Override public void execute(Object arg0) { if(StringUtils.isNumeric(arg0.toString())) { work(arg0); } } }); System.out.println(list); //查找集合中元素的个数 System.out.println(list);//[zhangsan, dalian, gateway, gateway, 28, 35] Map cardinalityMap = CollectionUtils.getCardinalityMap(list); System.out.println(cardinalityMap);//{35=1, 28=1, zhangsan=1, dalian=1, gateway=2} //查找两个集合中的相同元素 List list2 = new ArrayList(); list2.add("lisi"); list2.add("beijing"); list2.add("gateway"); list.add("19"); Collection intersection = CollectionUtils.intersection(list, list2); System.out.println(intersection); //获取两个List private static void work(Object obj){ System.out.println("闭包回调函数:我是数字,"+obj);}四、ArrayUtils
private static void arrayUtilsTest() { String[] array =new String[] {"zs", "ls"}; //增加元素 Object[] add = ArrayUtils.add(array, "ww"); System.out.println(StringUtils.join(add, ","));//zs,ls,ww //合并数组 String[] array2 =new String[] {"ww", "ss"}; Object[] addAll = ArrayUtils.addAll(array1, array2); System.out.println(StringUtils.join(addAll, ","));//zs,ls,ww,ss //克隆数组 Object[] clone = ArrayUtils.clone(array); System.out.println(StringUtils.join(clone, ","));//zs,ls boolean contains = ArrayUtils.contains(array, "ww"); boolean contains1 = ArrayUtils.contains(array, "zs"); System.out.println(contains+","+contains1);//false,true}读到这里,这篇"Java常用的工具类实例代码分析"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
元素
文件
字符
相同
两个
文件夹
字符串
大连
内容
数组
代码
实例
工具
常用
分析
文章
条件
张三
或或
个数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江苏扬州网络安全进广场
斗罗大陆服务器互通吗
数据库和多媒体的未来发展状况
上海智能软件开发行业
jianlisql数据库
杭州计算机软件开发价位
正确创建数据库sql语句
事业单位谁主管网络安全
朝阳区管理软件开发介绍
中科院网络安全待遇
计算机网络技术应该干什么
windows建站数据库导入
数据库表的关系有哪几种
手机能连接到电脑上的服务器吗
远程链接服务器工具
有关于数据库基础知识的题
现存的网络安全问题
网络安全目标4个方面
网络安全法 安全事件增大
怎么进服务器的IBMC
盗贼之海传送服务器
大华云睿软件开发部门怎么样
怎么创服务器
聊城节能软件开发团队
数据库加磁盘阵列
怎么买专利数据库
数据库配置excel导出模板
搭建数据中台 数据库选择
qt http 服务器
亳州多点视频系统服务器