Java
文章平均质量分 56
编程语言。
一线大码
CSDN不更新了,已转掘金。主页:https://juejin.cn/user/3280598429340984
展开
-
Java8 中新增的 Stream 流操作
因为Stream主要用于对集合数据的处理场景,所以除了上面几种获取简单结果的终止方法之外,更多的场景是获取一个集合类的结果对象,比如List、Set或者HashMap等。并行流类似于多线程在并行处理,所以与多线程场景相关的一些问题同样会存在,比如死锁等问题,所以在并行流终止执行的函数逻辑,必须要保证线程安全。顾名思义,通过终止管道操作之后,Stream流将会结束,最后可能会执行某些逻辑处理,或者是按照要求返回某些执行后的结果数据。...原创 2022-07-21 23:16:34 · 996 阅读 · 0 评论 -
Java 语言中修饰符顺序和作用范围
Java 语言规范建议按照以下顺序列出修改符:Annotationspublicprotectedprivateabstractstaticfinaltransientvolatilesynchronizednativestrictfp不遵循此约定对技术没有影响,但会降低代码的可读性,因为大多数开发人员都习惯了标准顺序。......原创 2021-12-01 19:25:59 · 643 阅读 · 0 评论 -
Java 中的强制类型转换
在 Java 中强制类型转换分为基本数据类型和引用数据类型两种,这里我们仅讨论引用数据类型的强制类型转换。在 Java 中由于继承和向上转型,子类可以非常自然地转换成父类,但是父类转换成子类则需要强制转换。因为子类拥有比父类更多的属性、更强的功能,所以父类转换为子类需要强制。那么,是不是只要是父类转换为子类就会成功呢?其实不然,他们之间的强制类型转换是有条件的。当我们用一个类型的构造器构造出一个对象时,这个对象的类型就已经确定的,也就说它的本质是不会再发生变化了。在 Java 中我们可以通过继承、向上转原创 2021-11-30 23:26:58 · 1207 阅读 · 0 评论 -
Java 正则表达式使用记录
/** * 用户昵称 */@NotBlankprivate String nickname;/** * 登录账号 */@NotBlank@Pattern(regexp = "^[a-zA-Z0-9][a-zA-Z0-9_]{5,15}$", message = "账号长度6-16位,允许数字字母下划线,不能以下划线开头")private String username;/** * 登录密码 */@NotBlank(groups = Create.class)@Pattern(r原创 2021-11-30 14:09:16 · 177 阅读 · 0 评论 -
Java 代码中需要使用转义符的地方
文章目录1. 正则表达式转义2. 文件路径转义1. 正则表达式转义Java 代码中使用到正则表达式里含有特殊字符时需要使用转义符\进行转义。. ? * + ! ^ $ [ ] ( ) \ 因为反斜线\也是特殊字符,所以特殊符号的转义需使用双反斜线\\,否则会报java.util.regex.PatternSyntaxException异常。public static void main(String[] args) { String string = "435212.jpg";原创 2021-11-24 22:42:02 · 3509 阅读 · 2 评论 -
Java 的非法反射警告 An illegal reflective access operation has occurred
最近使用 MyBatis-Plus 框架,在执行 SQL 查询的时候控制台日志提示了该警告信息,并且只有首次执行的时候才提示,同样的方法再次调用则不会提示,我用的 JDK11。下面转载一篇文章,解决了这个问题。反射是一项相当强大的特性,不仅在各类框架中被广泛应用,即使是在日常开发中我们也隔三差五得要和它打交道。然而在 JDK9 中 JDK 对反射加上了一些限制,需要注意。考虑有如下的代码:import java.lang.reflect.Field;import java.util.ArrayLi转载 2021-11-24 22:24:18 · 28850 阅读 · 0 评论 -
Java 实现字符串去特殊符号代码
去除字符串中的特殊符号:\n 回车(\u000a)\t 水平制表符(\u0009)\s 空格(\u0008)\r 换行(\u000d)工具类import org.apache.commons.lang3.ObjectUtils;import org.apache.commons.lang3.StringUtils;import java.util.ArrayList;import java.util.List;/** * @author wangbo * @date 2021原创 2021-11-24 19:46:42 · 6939 阅读 · 0 评论 -
Java 密码加密
MD5import lombok.NonNull;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUtils;import java.math.BigInteger;import java.nio.charset.StandardCharsets;import java.security.MessageDigest;import java.security.NoSuchAlgorithmExcept原创 2021-10-25 16:03:09 · 356 阅读 · 0 评论 -
Map 中的 value 转 List 方法注意事项
public static void main(String[] args) { Map<String, String> map = new HashMap<String, String>(8); map.put("a", "A"); map.put("b", "B"); map.put("c", "C"); map.put("d", "D"); map.put("e", "E")...原创 2021-05-28 18:29:57 · 519 阅读 · 1 评论 -
Java8 新特性之 Lambda 表达式
文章目录1. 基本语法2. 函数式接口2.1. 自定义函数式接口2.2. 基本函数式接口2.2.1. Predicate2.2.2. Consumer2.2.3. Function2.3. 基本数据类型函数式接口3. 捕获 Lambda4. 方法引用4.1. 语法4.1.1. 总述4.1.2. 示例4.2. 常见方法引用4.2.1. 指向静态方法的方法引用4.2.2. 指向任意类型的实例方法的引用4.2.3. 指向现有对象的实例方法的引用4.3. 构造方法引用5. 综合示例Java8之前传递一个代原创 2021-05-15 22:26:33 · 307 阅读 · 1 评论 -
Java 使用 synchronized 实现内置锁
文章目录1. 对象锁1.1. 同步方法1.2. 同步代码块(当前类对象锁)1.3. 同步代码块(传入类对象锁)2. 类锁2.1. 同步静态方法2.2. 同步代码块(当前类class锁)多个进程或线程同时(或着说在同一段时间内)访问同一资源会产生并发(线程安全)问题。解决并发问题可以用锁。单机情况下可以直接使用synchronized关键字实现的单机锁。Java的内置锁基本上可以分为对象锁和类锁,对象锁是用于对象实例方法或者对象实例上的,类锁是用于类的静态方法或者类的class对象上的。我们知道,一个类原创 2021-03-27 09:38:50 · 126 阅读 · 0 评论