
JAVA SE
文章平均质量分 91
一路向北
Talk is cheap.Show me the code.
展开
-
Java8中Stream流API最佳实践Lambda表达式使用示例
将详细展示java8中stream api的具体的实践使用案例。【创建流】在使用流之前,首先需要拥有一个数据源,并通过StreamAPI提供的一些方法获取该数据源的流对象。【中间操作】会有一些中间的操作List 转 Streamfilter(过滤)map(元素转换)flatMap(元素转换)distinct(去除重复,对象需要重写 equals、hashCode)sorted(排序)peek(生成新的流:流是单向的,例如用于日志打印)limit(取前面 n 个元素)skip(跳过 n 个元素)forEach原创 2024-03-13 09:56:30 · 1803 阅读 · 0 评论 -
Java8中Stream相关API介绍以及Lambda表达式使用
流是Java8引入的全新概念,它用来处理集合中的数据,暂且可以把它理解为一种高级集合。众所周知,集合操作非常麻烦,若要对集合进行筛选、投影,需要写大量的代码,而流是以声明的形式操作集合,它就像SQL语句,我们只需告诉流需要对集合进行什么操作,它就会自动进行操作,并将执行结果交给你,无需我们自己手写代码。因此,stream流的集合操作对我们来说是透明的,我们只需向流下达命令,它就会自动把我们想要的结果给我们。原创 2024-03-13 09:43:15 · 526 阅读 · 0 评论 -
java8新日期API详解与实践
Java 8中的时区操作被很大程度上简化了,新的时区类是原有的类的替代品。ZoneId对象可以通过方法创建,也可以通过of()方法接收一个“区域/城市”的字符串作为参数,你可以通过对于老的时区类TimeZone有了ZoneId,我们就可以将一个LocalDateLocalTime或对象转化为对象由两部分构成,和ZoneId,其中部分为部分为ZoneId。另一种表示时区的方式是使用ZoneOffset,它是以当前时间和世界标准时间(UTC)/格林威治时间(GMT)原创 2024-03-05 10:06:15 · 1468 阅读 · 0 评论 -
java中CompletableFuture异步编程详解以及实践案例
JDK8中新增加了一个包含50个方法左右的类CompletableFuture,提供了非常强大的Future的扩展功能,可以帮助我们简化异步编程的复杂性,提供了函数式编程的能力,可以通过回调的方式处理计算结果,并且提供了转换和组合CompletableFuture的方法。原创 2023-07-07 11:34:57 · 791 阅读 · 0 评论 -
java业务开发经典常见错误例子
java业务开发中经典常见的例子,spring、springboot、springcloud相关的业务开发例子。遇到的java业务开发示例以及解决方案。原创 2023-07-05 20:33:49 · 947 阅读 · 0 评论 -
java中处理异常规范
一般都会把代码分 Action、Service、Dao 等不同的层次结构,如果你是DAO层处理的异常,尽早处理吧,如果往上 throw SQLException,上层代码就还是要try catch处理啦,这就污染了你的代码在捕获一个异常后抛出另一个异常,并且希望把原始异常的信息保存下来,这被称为异常链。公司的框架提供统一异常处理就用到异常链,我们自定义封装异常,不要丢弃原始异常的信息,否则排查问题就头疼正例://e 保存异常信息,【把 exception 传递下去】原创 2023-07-04 23:26:12 · 704 阅读 · 0 评论 -
Java8中Optional解决空指针异常
为了解决空指针异常更加优雅,Java8 提供了 Optional类库。Optional 实际上是个容器:它可以保存类型T的值,或者仅仅保存null。Optional 提供很多有用的方法,这样我们就不用显式进行空值检测。原创 2022-06-30 09:42:39 · 601 阅读 · 0 评论 -
Java中IO之文件的读取详细解读
一、整个IO类的结构图为:二、测试文件的读取:1.先创建一个txt文件,保存时选择UTF-8编码格式2.创建测试类进行测试package cn.mesmile.io;import org.junit.Test;import java.io.*;/** * @date 2019-03-29 */public class IOTest { /**...原创 2019-03-29 16:16:53 · 280 阅读 · 0 评论 -
千分位分割一串数字
@Test public void test () { // 不带小数的千分位分割 BigDecimal bigDecimal = new BigDecimal(1234567890); DecimalFormat decimalFormat = new DecimalFormat("###,###"); Strin...原创 2019-03-06 21:03:11 · 440 阅读 · 0 评论 -
深入理解 for循环的执行流程
深入理解for循环的执行流程: 下面以流程图的方式,呈现for循环的执行流程:原创 2018-11-14 00:11:38 · 3250 阅读 · 0 评论