
java基础知识点
文章平均质量分 87
java基础知识点
keep thinking
热心博主小李,致力于编程技术分享,欢迎大家关注我
展开
-
深入了解:Java中BigDecimal比较大小的方法
在Java中,BigDecimal类提供了三种比较大小的方法,分别是compareTo()、equals()和compareTo()。例如,我们有一个 Person 类,其中包含 name 和 age 两个属性。在调用 Collections.sort() 方法时,会自动调用 Person 类中的 compareTo() 方法进行排序。在上面的例子中,我们根据 age 属性的大小来比较两个 Person 对象。原创 2024-08-14 23:27:14 · 3622 阅读 · 0 评论 -
java代码校验——全网最详细
这样的代码太啰嗦,除了使用策略模式进行优化,今天介绍一下校验注解@Valid,@Validated和@PathVariable,不仅可以减轻代码量,还加强了代码的易读性。场景:多个 Restfull 接口共用一个标准 Bean,每个接口的参数相同,但是需要校验的参数(必输项)却不完全相同,这样的场景可以使用 @Validated,因为它提供了分组校验的功能。即使是全局异常捕获的方式,也能看到:校验信息是被封装在 BindingResult 对象里的,所以,我们也可以在 RestFull 层直接取。原创 2024-03-10 16:28:12 · 1228 阅读 · 0 评论 -
java集合常见的错误
集合是开发中需要修改最多的地方,如:从数据库中取出多条数据是 List 结构,然后需要在 Service 进行层层处理,最终为前端展示提供 vo 对象,所以,很多集合使用的规范一定要弄明白。【强制】不要在 foreach 循环里进行元素的 remove/add 操作。:for循环内,如果在直接使用 remove/add 操作,将对原集合的操作,势必改变集合结构,该结构的改变势必影响新一轮的遍历。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升系统稳定性,码出质量。原创 2024-03-05 11:27:49 · 631 阅读 · 0 评论 -
java的字符串的拼接与切割——全网最详细
线程安全的可变字符序列。一个类似于 String的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。线程不安全:举例:我在银行创建账户会给我银行卡和存折,我在账户中存入 200 ,如果我和另一个人同时各拿着银行卡和存折去取钱,如果信息没有同步,那我们两个都能取出 200 ,这就是线程不安全。线程安全:线程之间会同步信息(我走你不走,你走我不走)(互斥)。原创 2024-01-12 18:00:00 · 1130 阅读 · 0 评论 -
java集合间的疑难点
从高级别层次来说快速失败是一个系统或软件对于其故障做出的响应。一个快速失败系统设计用来即时报告可能会导致失败的任何故障情况,它通常用来停止正常的操作而不是尝试继续做可能有缺陷的工作。如果一个iterator在集合对象上创建了,其它线程欲“结构化”的修改该集合对象,并发修改异常 (ConcurrentModificationException) 抛出。同步意味着在一个时间点只能有一个线程可以修改哈希表,任何线程在执行hashtable的更新操作前需要获取对象锁,其他线程等待锁的释放。原创 2023-12-13 11:47:50 · 559 阅读 · 0 评论 -
Collectors方法常见的异常
报错 NullPointerException。Collectors.toMap常见的异常。原创 2024-01-02 09:14:26 · 1052 阅读 · 1 评论 -
java数组详解
/定义一个数据类型为Person长度为5的数组,需要引入有Person方法的包,否则Person无法解析为类型。格式:数组存储的数据类型[ ] 数组名称 = new 数组存储的数据类型[]{元素1,元素2,元素3,元素4,…//定义一个长度为10的整数数组。格式:数组存储的数据类型[ ] 数组名称 = new 数组存储的数据类型[数据长度];如:定义一个长度为10的整数数组 int[ ] arr=new int[10];格式:数组存储的数据类型[ ] 数组名称 = {元素1,元素2,元素3,…原创 2023-12-13 14:37:10 · 555 阅读 · 0 评论 -
java集合的迭代器与遍历
一些集合类提供了内容遍历的功能,通过java.util.Iterator接口。这些接口允许遍历对象的集合。依次操作每个元素对象。当使用 Iterators时,在获得Iterator的时候包含一个集合快照。通常在遍历一个Iterator的时候不建议修改集合本省。Iterator:只能正向遍历集合,适用于获取移除元素。ListIerator:继承Iterator,可以双向列表的遍历,同样支持元素的修改。2、Iterator与ListIterator有什么区别?1、什么是Iterator。原创 2023-12-13 11:12:51 · 2244 阅读 · 0 评论 -
java常用集合的区别与联系以及应用场景
允许重复的对象。可以插入多个null元素。是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。常用的实现类有 ArrayList、LinkedList 和 Vector。ArrayList 最为流行,它提供了使用索引的随意访问,而 LinkedList 则对于经常需要从 List 中添加或删除元素的场合更为合适。不允许重复对象无序容器,你无法保证每个元素的存储顺序,TreeSet通过 Comparator 或者 Comparable 维护了一个排序顺序。原创 2023-12-13 10:56:52 · 1215 阅读 · 0 评论 -
java集合详解(集合与其它数据结构体之间的转换)——全网最通俗易懂的讲解(上)
集合是开发中需要修改最多的地方,如:从数据库中取出多条数据是 List 结构,然后需要在 Service 进行层层处理,最终为前端展示提供 vo 对象,所以,很多集合使用的规范一定要弄明白。说明:for循环内,如果在直接使用 remove/add 操作,将对原集合的操作,势必改变集合结构,该结构的改变势必影响新一轮的遍历。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升系统稳定性,码出质量。如果强行改变,如:list.add(“new”) 新元素,会抛出异常;原创 2023-12-13 09:31:02 · 644 阅读 · 0 评论 -
java.util.Map类的(get、getOrDefault、put、putIfAbsent、compute、computeIfAbsent、computeIfPresent)等方法详解
java.util.Map类的(get、getOrDefault、put、putIfAbsent、compute、computeIfAbsent、computeIfPresent)等方法详解原创 2023-07-11 19:00:54 · 1689 阅读 · 0 评论 -
Java的算数运算符、关系运算符、逻辑运算符、位运算符
Java的算数运算符、关系运算符、逻辑运算符、位运算符原创 2023-03-07 14:31:38 · 2184 阅读 · 0 评论 -
java的String类的应用与面试题
java的String类的常用API详解原创 2022-11-14 13:41:37 · 1030 阅读 · 0 评论