-
直接用==比较double常出错,因其二进制无法精确表示多数十进制小数(如0.1),导致微小舍入误差;Double.compare仅比较位模式是否完全相同,不支持容差,不能替代epsilon比较。484 收藏 -
应避免用异常代替控制流、滥用检查型异常、在finally中抛异常及自定义无上下文异常;正确做法包括用分支判断替代异常控制、封装检查型异常、使用try-with-resources、提供错误码/参数/cause的自定义异常。484 收藏 -
数组长度固定,查找可通过遍历实现,如for循环定位目标元素索引。484 收藏 -
ThreadLocal的值存在当前线程的threadLocals字段(ThreadLocalMap类型)中,而非ThreadLocal实例本身;get/set操作本质是对此Map的key(当前ThreadLocal)查/存value;因Entry的key是弱引用而value是强引用,若不显式remove(),易导致value内存泄漏,尤其在线程池场景下。484 收藏 -
Java项目集成Swagger推荐使用SpringDocOpenAPI(Swagger3),需引入springdoc-openapi-starter-webmvc-ui依赖,配置扫描包和UI路径,通过@Tag、@Operation等注解管理接口分组与描述,启动后访问/swagger-ui即可查看文档。483 收藏 -
使用Comparator.comparing()可实现List按属性排序,如按age升序:people.sort(Comparator.comparing(Person::getAge));支持多属性排序thenComparing()、降序reversed(),或通过Stream生成新列表避免修改原数据。483 收藏 -
DecimalFormat.format()不显示两位小数是因为模式中使用了“#”而非“0”、setMinimumFractionDigits()被错误设置,或double精度问题未预先舍入;正确做法是用"0.00"模式、避免干扰设置,并用BigDecimal或Math.round预处理数值。483 收藏 -
SynchronousQueue是零容量同步通道,不存储元素,put与take必须配对阻塞完成“手递手”交付,无缓冲、无复制、无中间状态,仅在生产者与消费者线程间直接传递引用。483 收藏 -
AS别名需显式书写、引号规范、作用域明确:SELECTnameASusername;含空格/中文/关键字时,MySQL用反引号,其余用双引号;仅SELECT和ORDERBY可用,WHERE/GROUPBY不可用;计算字段别名提升可读性与下游兼容性。483 收藏 -
本文介绍在Java中高效提取字符串中从起始位置到某个目标单词结尾处的子串,核心方法是结合indexOf()与substring(),避免遍历或正则开销,简洁且性能优越。483 收藏 -
Redis的Hash类型不支持字段级过期,而Redisson的RMapCache依赖Lua脚本模拟该行为;当写入速率过高(如500万条/30分钟)时,脚本执行被阻塞,过期逻辑失效,最终触发RedisOutOfMemoryException。483 收藏 -
new是最直接的对象创建方式,需类非抽象/接口且构造器可访问;反射newInstance()已弃用,应改用getDeclaredConstructor().newInstance();静态工厂更灵活安全,推荐优先使用。483 收藏 -
String.substring() 两个参数版本(即 substring(start, end))可以用来提取字符串中从 start 索引开始到 end 索引结束(不包含 end)的内容。要精准提取特定标签(如
... )包裹的内容,可以结合正则表达式或手动定位标签位置。方法一:使用正则表达式 + substringconst text = "Hello
使用substring提取标签内容需先动态定位边界:用indexOf找起始标签和闭合>确定beginIndex,再找结束标签位置作为endIndex(substring的endIndex不包含),注意索引越界、多标签及属性变化等陷阱,复杂场景应改用正则或HTML解析器。483 收藏
锁降级需显式调用tryConvertToReadLock且必须用原写锁stamp,失败时须先unlockWrite再readLock并重读字段;其价值在于写锁修正状态后转读锁支持并发只读计算,避免全程持写锁阻塞读请求。482 收藏
不一定。Java对象排序仅在使用Collections.sort()或Arrays.sort()且不传Comparator,或放入TreeSet/TreeMap时才需实现Comparable;否则可用Comparator,尤其适合临时、多维或第三方类排序。482 收藏