
java
AutisticV5
爱自己,爱生活,爱工作
展开
-
Java 8中的日期和时间API
Java 8中的日期和时间APIjava8日期和时间API介绍Java语言支持基于时间的对象,Java8发行版包含了一个基于不可变值得新API,这个类是线程安全的。这些类为构建它们的实例提供了流畅的API。java.time.LocalDate和java.time.LocalTime类提供了不带时区的日期和时间表示。它们代表观察者背景下的日期和时间,例如桌子上的日历或墙上的时钟。java.time.LocalDateTime代表日期和时间下面这段代码演示了这些类的用法。import java.t原创 2021-02-20 08:39:11 · 233 阅读 · 1 评论 -
flatMap示例
flatMap示例什么是flatMap()回顾下面的数据结构,# Stream<String[]># Stream<Stream<String>># String[][][ [1, 2], [3, 4], [5, 6]]在Java8中,我们可以使用flatMap将上述数据结构转化为一下结构# Stream<String># String[][1, 2, 3, 4, 5, 6]为什么要平流处理包含超过一个级别的流,例原创 2021-02-20 08:40:46 · 1388 阅读 · 1 评论 -
Supplier示例
Supplier示例在Java 8中,Supplier是一个函数接口,不需要接收参数,返回一个结果@FunctionalInterfacepublic interface Supplier<T> { T get();}Supplier下面的示例用Supplier,返回当前时间import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;import java.util.function原创 2021-02-20 08:40:17 · 487 阅读 · 0 评论 -
BiConsumer示例
BiConsumer示例在java8中,BiConsumer是一个函数接口,它接收两个参数,没有返回值@FunctionalInterfacepublic interface BiConsumer<T, U> { void accept(T t, U u);}BiConsumerimport java.util.function.Consumer;public class JavaBiConsumer1 { public static void main(Stri原创 2021-02-20 08:39:48 · 1338 阅读 · 0 评论 -
Consumer示例
Consumer示例在Java8中,Consumer是一个函数接口,它接收一个参数,没有返回值@FunctionalInterfacepublic interface Consumer<T> { void accept(T t);}Consumerimport java.util.function.Consumer;public class Java8Consumer1 { public static void main(String[] args) {原创 2021-02-19 17:16:04 · 506 阅读 · 0 评论 -
BiPredicate示例
BiPredicate示例在Java8中,BiPredicate是1一个函数接口,它接收两个参数,返回一个boolean类型的结果。BiPredicate和Predicate是一样的,只不过它的test()接收两个参数@FunctionalInterfacepublic interface BiPredicate<T, U> { boolean test(T t, U u);}BiPredicateimport java.util.function.BiPredicate;原创 2021-02-19 17:08:59 · 2176 阅读 · 0 评论 -
Predicate示例
Predicate示例在Java8中,Predicate是一个函数接口,它接收一个实参,返回一个boolean类型的结果。它通常被用来处理一个对象集合的过滤@FunctionalInterfacepublic interface Predicate<T> { boolean test(T t);}Predicate在filter()中使用filter()接收predicate参数import java.util.Arrays;import java.util.List;i原创 2021-02-19 16:54:44 · 4693 阅读 · 1 评论 -
UnaryOperator示例
UnaryOperator示例在Java8中,UnaryOperator是一个参数接口,它继承自FunctionUnaryOperator接收一个参数,返回和参数同样类型的结果UnaryOperator.java@FunctionalInterfacepublic interface UnaryOperator<T> extends Function<T, T> {}Function接收任意类型的类型,返回任意类型的结果Function.java@Func原创 2021-02-19 16:34:43 · 2975 阅读 · 0 评论 -
BinaryOperator示例
BinaryOperator示例在Java8中,BinaryOperator是一个函数接口,它集成BiFunctionBinaryOperator接收两个同样类型的实参,返回和参数同样类型的结果类型BinaryOperator.java@FunctionalInterfacepublic interface BinaryOperator<T> extends BiFunction<T,T,T> {}BiFunction接收两个任意类型的实参,返回任意类型的结果原创 2021-02-19 16:26:26 · 4759 阅读 · 0 评论 -
BiFunction示例
BiFunction示例在Java8中,BiFunction是函数接口,它接收两个实参,返回一个对象BiFunction.java@FunctionalInterfacepublic interface BiFunction<T, U, R> { R apply(T t, U u);}T——function第一个实参的类型U——function第二个实参的类型R——function返回的结果类型BiFunction<T, U, R>下面这原创 2021-02-19 16:02:56 · 1537 阅读 · 0 评论 -
Function示例
Function示例在Java8中,Function是一个功能接口,它接收一个实参(T类型的对象),返回一个对象(R类型的对象),实参和返回的对象可以是不同的类型Function.java@FunctionalInterfacepublic interface Function<T, R> { R apply(T t);}T——function接收的参数类型R——function返回的结果类型Function<T, R>下面示例展示了接收一原创 2021-02-19 15:36:40 · 1171 阅读 · 0 评论 -
Stream的map()示例
Stream的map()示例在Java 8中,stream().map()可以将一个对象转化为其它对象。一下是一些示例。String的List列表转化为大写简单的一个java示例,将String的List列表转化为大写形式import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;public class TestJava8 {原创 2021-02-19 15:15:56 · 531 阅读 · 0 评论 -
Stream的Filter示例
Stream的Filter示例该篇将向你展示几个示例,用来演示Stream的filter()、collect()、findAny()和orElse的使用。Stream的filter()和collect()在Java 8之前的版本,想下面这样过滤List列表:import java.util.ArrayList;import java.util.Arrays;import java.util.List;public class BeforeJava8 { public static原创 2021-02-19 14:54:00 · 4739 阅读 · 1 评论 -
方法引用,双冒号(::)操作符
方法引用,双冒号(::)操作符在Java8中,双冒号操作符称为方法引用。下面这个例子中,匿名类打印ListList<String> list = Arrays.asList("node", "java", "python", "ruby");list.forEach(new Consumer<String>() { // anonymous class @Override public void accept(String str) {原创 2021-02-19 11:32:08 · 514 阅读 · 0 评论 -
Comparator 示例
Comparator 示例在这个例子中,我们将会向你展示如何使用java 8的lambda表达式去写一个Comparator,去对List进行排序传统的Comparator示例Comparator<Developer> byName = new Comparator<Developer>() { @Override public int compare(Developer o1, Developer o2) { retur原创 2021-02-08 16:18:24 · 298 阅读 · 0 评论 -
Convert List to Map
Convert List to Map几个java 8例子,展示了如何将List对象转化为Map,以及如何处理重复的keypackage com.mkyong.java8public class Hosting { private int Id; private String name; private long websites; public Hosting(int id, String name, long websites) { Id =原创 2021-02-08 15:43:07 · 342 阅读 · 0 评论 -
Java8的forEach范例
Java8的forEach范例遍历Map下面是一个遍历Map的常规方式public static void loopMapClassic() { Map<String, Integer> map = new HashMap<>(); map.put("A", 10); map.put("B", 20); map.put("C", 30); map.put("D", 40); map.put("E", 50原创 2021-02-08 11:24:06 · 509 阅读 · 1 评论 -
设计模式学习——开始创建模式
简单工厂模式当需要创建大量的产品时,并且这些产品具有相同的接口,那个我们可以通过工厂方法来进行创建。比如我们有两个类public class College {public void study() {System.out.println("我在大学学习!”);}}public class HighSchool {public void study()原创 2017-09-18 08:56:01 · 395 阅读 · 0 评论 -
UML类图详解
在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。下面我们结合实例理解这些关系。基本概念类图(Class Diagram): 类图是面向对象系统建模中最常用转载 2017-09-18 13:56:16 · 577 阅读 · 0 评论 -
算法——最大公约数
1、计算两个非负整数p和q的最大公约数。 思路:若q是0,则最大公约数就是p。否则,将p除以q得到余数r,p和q的最大公约数即为q何r的最大公约数public static int maxCommonDivisor(int p, int q) { if(q == 0) { return p; } int r = p % q; ma...原创 2018-07-27 10:41:14 · 848 阅读 · 0 评论 -
Netty编写Echo服务器(一)
所有的Netty服务器都需要以下两个部分至少一个ChannelHandler——该组件实现了服务器对从客户端接收的数据的处理,即它的业务逻辑 引导——这是配置服务器的启动代码。至少,它会将服务器绑定到它要监听连接请求的端口上ChannelHandler和业务逻辑由于Echo服务器会响应传入的消息,因此只需要实现ChannelnboundHandler接口,用来定义响应入站的事件方法。这...翻译 2018-08-03 08:49:07 · 1192 阅读 · 0 评论 -
spirngboot学习(一)
用过Spring Boot和Spring开发应用程序的伙计,那么心里一定对他们进行过比较,这里就不得不提及Spring Boot的最重要的核心:自动配置:针对很多Spring应用程序常见的应用功能,Spring Boot能自动提供相关配置。 起步依赖:告诉Spring Boot需要什么功能,它就能引入需要的库 命令行界面:这是Spring Boot的可选特性,借此你只需写代码就能完成完整的...原创 2018-09-23 14:51:48 · 195 阅读 · 0 评论 -
工作记事——(一)
最近工作用到多线程,接下来就说一下多线程。多线程也算是java里面一块很重要的内容。说到线程,就不得不谈一谈进程。我们启动电脑的任务管理器时,里面就有一栏——进程,一个进程可以开启多个线程,线程算是轻量级的。不过64位的java虚拟机,默认,一个进程开启的线程占用空间1024K,所以还是有限制的。谈到多线程的好处,最多的感受可能就是让程序运行得更快,试想让多个线程去执行一个任务,那么肯定比...原创 2018-09-19 08:34:16 · 680 阅读 · 0 评论 -
Quartz超时重试机制
高可用作为考究系统的一项重要指标,如何做到系统的高可用,谈及一个系统,这个话题就难以越过。Quartz作为目前调度框架的一个流行组件,如何保证Quartz的高可用,任务调度失败后,如何进行重试,这个也是一个值得关注的问题。 网上看过许多涉及定时调度的开源项目,但发现其都存在一个问题,并未对任务调度的失败做处理,仅仅只是简单的日志记录,以及手工重采。但是现实情况中,往往可能...原创 2019-07-04 20:13:16 · 6984 阅读 · 2 评论 -
自己动手,难以足食
在java软件开发这一行,快工作了一年了,看过许多别人搭的框架,但是封装太多了,想自己搭个权限框架,但是动手之后才发现,遇到困难了,前台主界面不会做,上Logo、左中菜单、右中内容、下版权说明的布局就是弄不好,想把别人做的很好看的主界面搬过来,却发现,无从下手,所以想问问各位大神,你们搭框架时,这个界面是怎么弄的,那么好看!弄着很长时间了,就是弄不好,感觉心力交瘁,我想主攻后台数据处理,怎么感觉现原创 2017-08-16 08:45:36 · 280 阅读 · 0 评论