随笔分类 - java8
摘要:import junit.framework.TestCase; import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; /** * <p> * java
阅读全文
摘要:背景 使用过java8的朋友应该都知道LocalDateTime类型,它作为全新的日期和时间API ,对比Date类型有着很大的优势,极大的方便了我们对于时间和日期的操作。不过,如果在日常使用中,如果我们不对这个类型的字段进行处理的话,在打印或者直接返回到页面的时候往往看到的格式是这样的 2020-
阅读全文
摘要:public class StreamTest { /** * stream.collect() 的本质由三个参数构成, * 1. Supplier 生产者, 返回最终结果 * 2. BiConsumer<R, ? super T> accumulator 累加器 * 第一个参数是要返回的集合, 第
阅读全文
摘要:import junit.framework.TestCase; import java.util.ArrayList; import java.util.HashMap; import java.util.Optional; import java.util.stream.Collectors;
阅读全文
摘要:描述 我们先看一段使用了并行流的代码 @Test public void testStream() { List<Integer> list = new ArrayList<>(); for (int i = 0; i < 10000; i++) { list.add(i); } System.ou
阅读全文
摘要:public class TestTime extends TestCase { private static final Logger log = LoggerFactory.getLogger(TestLocalDate.class); public void testDate() { //创建
阅读全文
摘要:import java.time.Instant; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneId; import java.util.Date; public class Dat
阅读全文
摘要:分支/合并框架的目的是以递归方式将可以并行的任务拆分成更小的任务,然后将每个子任 务的结果合并起来生成整体结果。它是 ExecutorService 接口的一个实现,它把子任务分配给 线程池(称为 ForkJoinPool )中的工作线程。 import java.util.concurrent.F
阅读全文
摘要:工厂方法返回类型用于 toList List 把流中所有项目收集到一个List 使用示例: List dishes = menuStream.collect(toList()); toSet Set 把流中所有项目收集到一个 Set ,删除重复项 使用示例: Set dishes = menuStr
阅读全文
摘要:1. 勾股数 什么是勾股数(毕达哥拉斯三元数)呢?我们得回到从前。在一堂激动人心的数学课上,你了解到,古希腊数学家毕达哥拉斯发现了 某些三元数 (a, b, c) 满足公式 a * a + b * b = c * c ,其中 a 、 b 、 c 都是整数。例如,(3, 4, 5)就是一组有效的勾股数
阅读全文
摘要:交易员和交易的实体类的定义如下: Trader.class public class Trader { private String name; private String city; public Trader(String n, String c) { this.name = n; this.
阅读全文
摘要:例子: 怎样用map和reduce方法数一数流中有多少个菜呢? 答案:要解决这个问题,你可以把流中每个元素都映射成数字1,然后用reduce求和。这相当于按顺序数流中的元素个数。 int count = menu.stream() .map(d -> 1) .reduce(0, (a, b) ->
阅读全文
摘要:Java 8中的常用函数式接口 函数式接口 函数描述符 原始类型特化 Predicate<T> T->boolean IntPredicate,LongPredicate, DoublePredicate Consumer<T> T->void IntConsumer,LongConsumer, D
阅读全文
摘要://无输入参数,返回T类型的一个结果。 new Supplier<String>() { @Override public String get() { return null; } }; Supplier<String> supplier = () -> "Test supplier"; supp
阅读全文
摘要:为什么需要 Stream Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon Kinesis 对大数据实时处理的 Stream
阅读全文