不要用魔法值!!!
发表于|更新于
|浏览量:
我来到这个世界为的是看太阳和蔚蓝色的田野。——巴尔蒙特
《阿里Java手册》中第一条编程规约下的第二条常量定义里的第一条

例如这里

我们使用了魔法值
我们改成常量则为

像是字符编码此类都有对应的常量或者枚举等
例如java.nio.charset.StandardCharsets
相关推荐
2023-01-24
spring caching
凡事必须要有统一和决断,因此,胜利不站在智慧的一方,而站在自信的一方。——拿破仑 官方文档:https://spring.io/guides/gs/caching/ 引入依赖: 1234<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId></dependency> 准备一个Book类 12345678910111213141516171819202122232425262728293031323334package com.example.caching;public class Book { private String isbn; private String title; public Book(String isbn, String title) { this.isbn = isbn; ...
2024-02-01
minio临时凭证直传切换到阿里云oss
孤独没有什么不好。使孤独变得不好,是因为你害怕孤独。——《孤独六讲》 代码非常简单,像之前的实现: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273import cn.hutool.core.date.DateUtil;import cn.hutool.core.io.file.FileNameUtil;import cn.hutool.core.lang.UUID;import cn.hutool.core.text.StrPool;import cn.hutool.core.util.StrUtil;import cn.hutool.core.util.URLUtil;import cn.hutool.http.ContentType;import com.aliyun.oss.HttpMethod;import com.aliyun.oss.OSS...
2020-08-21
Bigdecimal
转载,原文 一、简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。 二、构造器描述BigDecimal(int) 创建一个具有参数所指定整数值的对象。BigDecimal(double) 创建一个具有参数所指定双精度值的对象。BigDecimal(long) 创建一个具有参数所指定长整数值的对象。BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。 三、方法描述add(BigDecimal) BigDec...
2023-12-10
可变参数传入数组
通常是不想成名的人反而成名。——霍姆斯 今天遇到这样一个场景: 1234 @Overridepublic void deleteAllById(@Nonnull Iterable<? extends String> strings) { stringRedisTemplate.opsForHash().delete(SmCacheConst.STATE_MACHINE, );} 这里的org.springframework.data.redis.core.HashOperations#delete如下: 1 Long delete(H key, Object... hashKeys); 那这里我如果直接将Iterable转为数组,能正常运转吗? 也就是说,如果我是: 12Object[] array = StreamSupport.stream(strings.spliterator(), false).toArray(); stringRedisTemplate.opsForHash().delete(SmCac...
2020-08-31
驼峰下划线互转工具类
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253package com.ruben.utils;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * @ClassName: CamelCaseUtils * @Description: * @Date: 2020/8/31 19:13 * * * @author: achao<achao1441470436 @ gmail.com> * @version: 1.0 * @since: JDK 1.8 */public class CamelCaseUtils { private static Pattern underlinePattern = Pattern.compile("_(\\w)"); private static Pattern upper...
2021-07-22
创建只读集合
真正的人生,只有在经过艰难卓绝的斗争之后才能实现。——塞涅卡 在java8中 我们可以使用下面的函数创建只读集合 12345678Collections.unmodifiableCollection(Arrays.asList(""));Collections.unmodifiableList(Collections.singletonList(""));Collections.unmodifiableMap(new HashMap<>(1 << 4));Collections.unmodifiableSet(new HashSet<>());Collections.unmodifiableNavigableMap(new TreeMap<>());Collections.unmodifiableNavigableSet(new TreeSet<>());Collections.unmodifiableSortedMap(new TreeMap<>());Colle...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog