Java
文章平均质量分 81
Java学习笔记,个人遇到的问题及解决方案记录
也曾眼眸有光
天空即在我们头上也在我们脚下
展开
-
使用自定义注解+反射,实现字典转换
也可不使用切面,定义工具类进行处理。原创 2023-08-21 16:27:29 · 464 阅读 · 0 评论 -
java Stream流
在在的版本中,借助直观感受上,Stream的实现方式代码更加简洁、一气呵成。在代码中也经常使用Stream流,但是对Stream流的认知往往也是仅限于会一些简单的filtermapcollect等操作,但JAVA的Stream可以适用的场景与能力远不止这些。?这里我们可以先搁置这个问题,先整体全面的了解下Stream,然后再来讨论下这个问题。笔者结合在团队中多年的代码检视遇到的情况,结合平时项目编码实践经验,对。原创 2023-03-31 16:59:03 · 431 阅读 · 0 评论 -
两个Map的合并操作
merge(param1,param2,param3) : 第一个参数为要合并的key,第二个参数为要合并的value,第三个参数接收两个参数的函数,用来处理重复的 key值出现的处理逻辑,(v1,v2) -> v1)表示使用map1的value值,(v1,v2) -> v2)表示使用map2的value值。如果remapping函数的计算结果为null,将解除此结果。map2的结果是map2和map的lambda结果集,而map则还是原来的map。原创 2022-11-01 11:28:42 · 23863 阅读 · 0 评论 -
Java的序列化和反序列化
序列化:把对象转换为字节序列的过程称为对象的序列化.反序列化:把字节序列恢复为对象的过程称为对象的反序列化.当我们只在本地 JVM 里运行下 Java 实例, 这个时候是不需要什么序列化和反序列化的, 但当我们需要将内存中的对象持久化到磁盘, 数据库中时, 当我们需要与浏览器进行交互时, 当我们需要实现 RPC 时, 这个时候就需要序列化和反序列化了.也就是说在 Java 中实现了 Serializable 接口后, JVM就会在底层帮我们实现序列化和反序列化,...原创 2022-08-26 17:31:08 · 163 阅读 · 0 评论 -
java数据结构
枚举(Enumeration)位集合(BitSet)向量(Vector)栈(Stack)字典(Dictionary)哈希表(Hashtable)属性(Properties)Java Stack 类栈是Vector的一个子类,它实现了一个标准的后进先出的栈。堆栈只定义了默认构造函数,用来创建一个空栈。 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。 Stack()除了由Vector定义的所有方法,自己也定义了一些方法:Java Hashtable 类Hashtable和Ha原创 2022-06-14 11:17:21 · 102 阅读 · 0 评论 -
Java基础——Java集合框架
java集合框架集合框架被设计成要满足以下几个目标。- 该框架必须是高性能的。基本集合(动态数组,链表,树,哈希表)的实现也必须是高效的。- 该框架允许不同类型的集合,以类似的方式工作,具有高度的互操作性。- 对一个集合的扩展和适应必须是简单的。Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set 和 Queue,再下面是一些抽象类,最后.原创 2022-04-14 08:57:06 · 641 阅读 · 0 评论 -
Java基础——Java数据结构
java数据结构java提供了强大的数据结构。主要有以下几种接口的类(传统遗留): 枚举(Enumeration) 位集合(BitSet) 向量(Vector) 栈(Stack) 字典(Dictionary) 哈希表(Hashtable) 属性(Properties) 序号 类描述 1 Vector 该类和ArrayList非常相似,但是该类是同步的,可以用在多线程的情况,该类允许设置默认的增长长度,默认扩容方式为原来原创 2022-04-14 08:52:34 · 857 阅读 · 0 评论 -
Java8新特性——Optional类(主要用于空指针处理)
Optional类(用于判空)Optional类,是jdk8新增类,用于优雅的解决程序中经常出现的空指针异常,且提供了多种调用方法,使代码更加干净整洁。Optional方法介绍方法名 方法介绍 方法声明 empty 创建一个空的Optional对象。调用isPresent返回false,调用get抛空指针异常 <T> Optional<T> empty() of 使用一个非空的值创建Optional对象。Optional.of(nul原创 2022-04-14 08:41:28 · 809 阅读 · 0 评论 -
Java基础——抽象类,接口,枚举
java 抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。父类包含了子类集合的常见的方法,但是由于父类本身是抽象的,所以不能使用这些方法。在 Jav原创 2022-04-14 08:32:46 · 263 阅读 · 0 评论 -
Java基础——面向对象的特点
面向对象封装封装是指将抽象性函数式接口的实现细节部分包装,隐藏起来的方法。可以防止该类的代码和数据被外部类定义的代码随机访问,要访问需要通过严格的接口控制。适当的封装可以让程序更容易理解与维护,也增强了程序的安全性。封装的优点 良好的封装能够减少耦合。 类内部的结构可以自由修改。 可以对成员变量进行更精确的控制。 隐藏信息,实现细节。 继承继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,原创 2022-04-13 17:18:45 · 106 阅读 · 0 评论 -
Java基础——文件File类
文件file类Java文件类以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。File对象代表磁盘中实际存在的文件和目录。通过以下构造方法创建一个File对象。通过给定的父抽象路径名和子路径名字符串创建一个新的File实例。File(File parent, String child);通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例。File(String pathname) 根据 parent 路径名字符串和 c..原创 2022-04-13 17:13:20 · 347 阅读 · 0 评论 -
Java基础——正则表达式
正则表达式语法在其他语言中,\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。在 Java 中,\ 表示:我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。所以,在其他的语言中(如 Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java 中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。也可以简单的理解在 Java 的正则表达式中,两个 \ 代表其他语言中的一个 \,这也就是为什么表示一位数字的正则表达式是 \d,而表原创 2022-04-13 17:04:02 · 157 阅读 · 0 评论 -
Java基础——常用类和方法
Java Number & Math 类所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类包装类 基本数据类型 Boolean boolean Byte byte Short short Integer int Long long Character char Float float Double double Java Math 类原创 2022-04-13 17:02:27 · 553 阅读 · 0 评论 -
Java学习笔记——Java循环结构选择结构
Java 循环结构while 循环while是最基本的循环,只要布尔表达式为 true,循环就会一直执行下去。do…while 循环对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 fa原创 2022-04-13 16:58:32 · 146 阅读 · 0 评论 -
Java学习笔记——Java运算符
Java 运算符计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运算符 算术运算符算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。操作符 描述 + 加法 - 相加运算符两侧的值 - 减法 - 左操作数减去右操作数 *原创 2022-04-13 16:54:04 · 193 阅读 · 0 评论 -
Java学习笔记——Java对象和类
Java 对象和类Java是一种面向对象语言。支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 一个类可以包含以下类型变量: 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句原创 2022-04-13 16:52:28 · 147 阅读 · 0 评论 -
Java学习笔记——Java基础语法
java基础JDK下载地址:下载地址:Java Downloads | Oracle,详细操作Java 开发环境配置 | 菜鸟教程 (runoob.com)Java 基础学习网站:Java 教程 | 菜鸟教程java基础语法 含义 对象 对象是一个类的实例,有状态行为。 类 类是一个模板,它描述一类对象的行为和状态 方法 方法就是行为,一个类可以有很多方法,逻辑运算,数据修改等都在方法中完成 实例变量 每个对象都有独特的实例变量,对象的状态有这些原创 2022-04-13 16:51:10 · 133 阅读 · 0 评论