首页
学习
活动
专区
圈层
工具
发布

还在重复造轮子?试试这个java工具类

大家好,我是可爱又机灵的开源小妹。 上周接到老大的需求说让小妹整理下工具类,新项目要用,本想直接拿以前的改改直接用的,结果发现以前的工具类存在很多问题,光加解密工具类就重复写了很多个。...简介 Hutool 是一个小而全的 Java 工具类库,通过静态方法封装,降低相关 API 的学习成本,提高工作效率,使 Java 拥有函数式语言般的优雅,让 Java 语言也可以“甜甜的”。...,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的 bug。...包含组件 Hutool 是一个 Java 基础工具类,对文件、流、加密解密、转码、正则、线程、XML 等 JDK 方法进行封装,组成各种 Util 工具类 可以根据需求对每个模块单独引入,也可以通过引入...类型转换工具类 Convert Convert 类是一个类型转换工具方法类,里面封装了针对 Java 常见类型的转换,用于简化类型转换。

1.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Excel公式:有重复的?没重复的?又要判断了

    问题很简洁:判断单元格中的数字有无重复?如下图1所示。 图1 注:本文示例整理自chandoo.org。 有重复?还是没有重复?这是经常遇到的情形。 对于简单的少量的数据,一眼就看得出来。...下面的公式使用SUBSTITUTE函数依次用空替换单元格中的数字,然后计算替换后的值的长度,如果存在重复的数字,则至少替换2次,其长度会至少减少2,因此,如果替换后长度的差值小于2,则表明没有重复的数字...下面的公式统计FIND函数查找的结果,然后与单元格中数字的长度比较,从而判断是否存在重复数。...下面的公式使用MODE函数获取将单元格中数拆分后的数字中有无重复值。...,如果有大于1的,表明存在重复数字。

    2.5K50

    重复的DNA序列

    将DNA序列看作是只包含['A', 'C', 'G', 'T']4个字符的字符串,给一个DNA字符串 ,找到所有长度为10的且出现超过1次的子串。...序列进行整数编码: [‘A’, ‘C’, ‘G’, ‘T’]4个字符分别用[0, 1, 2, 3](二进制形式(00, 01, 10, 11)所表示,故长度 为10的DNA序列可以用20个比特位的整数所表示...1.设置全局整数哈希int g_hash_map[1048576]; 1048576 = 2^20,表示所有的长度为10的 DNA序列。...2.将DNA字符串的前10个字符使用左移位运算转换为整数key,g_hash_map[key]++。...3.从DNA的第11个字符开始,按顺序遍历各个字符,遇到1个字符即将key右移2位 (去掉最低位),并且将新的DNA字符s[i]转换为整数后,或运算最高位(第19 、20位),g_hash_map[key

    83320

    Salesforced的重复管理

    下图是我在系统里设置的一个重复规则,当客户名字和行业一致的时候则判定此记录为重复记录,然后阻止客户保存此记录。...那么今天就向大家介绍下Salesforce Data.com的重复管理。现在你可以控制是否允许用户在Salesforce中创建重复的记录;自定义识别重复的逻辑;并可以创建可以允许用户重复数据的报表。...匹配规则用来比较在预设的规则下哪些记录是重复的。接下来,可能重复的记录会返回并提示给用户。...(2) 当记录保存时被识别重复后所发生的事件取决于你在重复规则的设置(3).例如,重复规则可阻止用户保存可能重复的记录或者也可允许用户保存。...Salesforce也可在报告中查看用户保存的允许重复的记录。 ? 重复管理的局限性: 重复管理之可以在客户,联系人,以及潜在客户中使用,其它的对象包含自定义对象以及个人客户等现在都不支持此功能。

    1.2K20

    不要再重复造轮子了,这款开源工具类库贼好使!

    Hutool是一个小而全的Java工具类库,它帮助我们简化每一行代码,避免重复造轮子。如果你有需要用到某些工具类的时候,不妨在Hutool里面找找。...本文总结了平时常用的16个工具类,希望对大家有所帮助! 安装 Hutool的安装非常简单,Maven项目中只需在pom.xml添加以下依赖即可。...Convert 类型转换工具类,用于各种类型数据的转换。平时我们转换类型经常会面临类型转换失败的问题,要写try catch代码,有了它,就不用写了!...可用于反射获取类的方法及创建对象。...//获取某个类的所有方法 Method[] methods = ReflectUtil.getMethods(PmsBrand.class); //获取某个类的指定方法 Method method =

    2K10

    不要再重复造轮子了,这款开源工具类库贼好使!

    读者群里有个小伙伴感慨说,“Hutool 这款开源类库太厉害了,基本上该有该的工具类,它里面都有。”...groupId> hutool-all 5.4.3 Hutool 的设计思想是尽量减少重复的定义...一个好的轮子可以在很大程度上避免“复制粘贴”,从而节省我们开发人员对项目中公用类库和公用工具方法的封装时间。同时呢,成熟的开源库也可以最大限度的避免封装不完善带来的 bug。...Hutool 封装的 Console 类借鉴了 JavaScript 中的 console.log(),使得打印变成了一个非常便捷的方式。...Hutool 中的类库还有很多,尤其是一些对第三方类库的进一步封装,比如邮件工具 MailUtil,二维码工具 QrCodeUtil,Emoji 工具 EmojiUtil,小伙伴们可以参考 Hutool

    49030

    数组中重复的数

    之前有写过 找出数组中只出现一次的数,今天再来看下怎么找出数组中重复出现的数。 有一个长度为 n 的数组,所有的数字都在 0~n-1 的范围,现在要求找出数组中任意一个重复的数字。...思路二: 利用空间换时间的思想,新建一个哈希表,然后遍历数组,每扫描一个元素都去哈希表里查找是否也存在该元素,如果存在,即找到一个重复的数,如果不存在,则将该元素保存到哈希表。...思路三: 认真审题,你会发现有一些特点,长度为 n 的数组,且元素的大小范围为 0~n-1,如果没有重复的数字的话,那么数组排序后数字 i 就是下标 i 所在的位置了,即 arr[i] == i。...交换了之后,再重复上面的比较、交换操作,直到找到一个重复的数。 arr = [4,1,1,3,2,5,5] arr[0] != 0 则比较 arr[0] 和 arr[4] arr[0] !...= 0 则比较 arr[0] 和 arr[1] arr[0] == arr[1] 找到一个重复的数 你可能会问,为什么要交换,交换的目的就是为了把元素放到属于它的位置上,要让这个数组满足 arr[i]

    2.5K20

    抓出那些重复的基因

    因为有重复值,所以先用table()查看有多少重复元素,即出现次数大于1的基因。...,发现并没有筛选出来,反而将g_3中的重复的基因赋值为TRUE,只出现一次的基因赋值为FALSE g_3 1 #将重复出现的元素挑选出来赋值给一个新的向量g_3> g_3 g...虽然优化了的解法2能够挑选出来重复基因,并可以统计每个这样的基因出现的次数,但是g_3(无论解法1还是解法2里)都不是一个简单的向量。...那么有没有可能通过指定重复基因所在的index(即位置)而把它们挑选出来呢? 首先通过as.numeric()尝试将table(g)的出现次数转化为一个单纯的数值型向量。成功!...,下面就可以通过向量按照位置取子集的方式挑出重复出现的基因了。

    61510

    数组中重复的数字

    题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。...例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 解题思路 最简单的就是用一个数组或者哈希表来存储已经遍历过的数字,但是这样需要开辟额外的空间。...如果题目要求不能开辟额外的空间,那我们可以用如下的方法: 因为数组中的数字都在0~n-1的范围内,所以,如果数组中没有重复的数,那当数组排序后,数字i将出现在下标为i的位置。...如果是,则接着扫描下一个数字;如果不是,则再拿它和m 位置上的数字进行比较,如果它们相等,就找到了一个重复的数字(该数字在下标为i和m的位置都出现了),返回true;如果它和m位置上的数字不相等,就把第...duplication like pointor in C/C++, duplication[0] equal *duplication in C/C++ // 这里要特别注意~返回任意重复的一个

    3.4K30

    拒绝重复代码,封装一个多级菜单、多级评论、多级部门的统一工具类!

    一、介绍你能看到很多人都在介绍如何实现多级菜单的效果,但是都有一个共同的缺点,那就是没有解决代码会重复开发的问题。如果我需要实现多级评论呢,是否又需要自己再写一遍?...为了简化开发过程并提高代码的可维护性,我们可以创建一个统一的工具类来处理这些需求。在本文中,我将介绍如何使用SpringBoot创建一个返回多级菜单、多级评论、多级部门、多级分类的统一工具类。...如果你更关注写入操作的效率和数据一致性,并且树的深度不会很大,那么使用父评论ID字段来实现多级评论可能更简单和高效。二、统一工具类具体实现1....编写工具类TreeNodeUtil其中我们需要实现能将一个List元素构建成熟悉结构我们需要实现生成tree_path字段我们需要优雅的实现该方法/** * @Description: 树形结构工具类...首先我们将元素分为父子两类,让其构建出一个小型树,然后我们将构建的子元素和下次遍历的父节点传入,递归的不断进行,这样就构建出了我们最终的想要实现的效果。

    25900

    拒绝重复代码,封装一个多级菜单、多级评论、多级部门的统一工具类

    一、介绍 你能看到很多人都在介绍如何实现多级菜单的效果,但是都有一个共同的缺点,那就是没有解决代码会重复开发的问题。如果我需要实现多级评论呢,是否又需要自己再写一遍?...为了简化开发过程并提高代码的可维护性,我们可以创建一个统一的工具类来处理这些需求。在本文中,我将介绍如何使用SpringBoot创建一个返回多级菜单、多级评论、多级部门、多级分类的统一工具类。...编写工具类TreeNodeUtil 其中我们需要实现能将一个List元素构建成熟悉结构 我们需要实现生成tree_path字段 我们需要优雅的实现该方法 /** * @Description: 树形结构工具类...首先我们将元素分为父子两类,让其构建出一个小型树,然后我们将构建的子元素和下次遍历的父节点传入,递归的不断进行,这样就构建出了我们最终的想要实现的效果。...三、测试 定义一个类实现 ITreeNode /** * @Description: 测试子元素工具类 * @Author: yiFei */ @Data @EqualsAndHashCode(callSuper

    77600

    js实现两个数组对象,重复的属性覆盖,不重复的添加

    当使用ES5语法时,你可以使用for循环和hasOwnProperty方法来实现两个数组对象的合并,覆盖重复的属性,并添加不重复的属性。...merged 和一个空的属性映射对象 propMap。...然后,通过遍历第一个数组 arr1,将属性添加到 merged 数组中,并在 propMap 对象中以属性的键值作为键,属性对象作为值进行存储。...如果存在,说明属性是重复的,则找到它在 merged 数组中的位置,并用第二个数组中的属性对象覆盖它。如果不存在,说明属性是不重复的,直接将属性添加到 merged 数组中。...最后,返回合并后的数组 merged。这样就实现了两个数组对象的合并,重复属性被覆盖,不重复属性被添加。我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

    1.6K10
    领券