示例 算法 代码java

[Java]关于反射的理解与运用

反射的关键是细节比较多。本文耗费三小时完成,主要是思考怎么写才能清楚明了、完整和少冗余。 如果文中阐述不全或不对的,多多交流。 ......
Java

net8实现MediatR小示例C#

MediatR是.net下的一个实现消息传递的库,简洁高效,它采用中介者设计模式,通过进程内消息传递机制,进行请求/响应、命令、查询、通知和事件的消息传递,可通过泛型来支持消息的智能调度,用于领域事件中。 实践: 新建一个net8 WebApi标准项目,选择启用OpenAPI支持和使用控制器; 添加 ......
示例 MediatR net8 net

[RFC6238] TOTP: 基于时间的一次性密码生成算法

原创 给我馍馍 给我馍馍 2019-03-28 22:42 在闲暇时间做了一个TOTP相关的开源项目,在项目初步完成之余,我尝试对[RFC6238]文档进行了翻译,供大家参考与查阅,若有不妥之处,还望各位前辈海涵斧正。 生活中我们会经常使用到TOTP的算法应用,如银行的动态口令器、网络游戏中的将军令 ......
算法 一次性 密码 时间 6238

Dating Java8系列之通过行为参数化传递代码

给我馍馍/文 引言 作为技术开发人员,我们无法保证我们写出来的代码的可用时间和保质期,也许今天刚上线的一个功能,等到明天就因为需求变动不得不进行更改。 为什么会不断的变化 作为技术人员,我们当然希望需求能循序渐进地平稳过度,但往往事与愿违,对于其原因我简单总结为以下几点。 用户导向,用户和市场是风向 ......
行为 参数 代码 Dating Java8

Dating Java8系列之Java8中的‘流’

给我馍馍/文 流的概念 1.流是什么 流是Java API的新成员,它允许你以声明性方式处理数据集合(通过查询语句来表达,而不是临时编写一个实现)。就现在来说,我们可以把它们看成遍历数据集的高级迭代器。 代码:按价格排序后得到手机名称列表 使用新的流式方法有几个显而易见的好处。 代码是以声明性方式写 ......
Java8 Java Dating

Dating Java8系列之Java8中的流操作

给我馍馍/文 本次我们会使用到很多的流操作,如筛选、切片、映射、查找、匹配和归约,这些操作可以让我们能快速完成复杂的数据查询。 筛选和切片 用谓词筛选 Streams接口支持filter方法。该操作会接受一个谓词(一个返回 boolean的函数)作为参数,并返回一个包括所有符合谓词的元素的流。 Li ......
Java8 Java Dating

Dating Java8系列之用流收集数据

给我馍馍/文 收集器简介 1.收集器介绍 Java 8中流支持两种类型的操作:中间操作(如filter或map)和终端操作(如count、findFirst、forEach和reduce)。 中间操作可以链接起来,将一个流转换为另一个流。这些操作不会消耗流,其目的是建立一个流水线。与此相反,终端操作 ......
数据 Dating Java8 Java

Dating Java8系列之并行数据处理

翎野君/文 分支合并框架 分支合并框架介绍 分支/合并框架的目的是以递归的方式将可以并行的任务拆分成更小的任务,然后将每个子任务的结果合并起来生成整体结果。 它是ExecutorService接口的一个实现,它把子任务分配给线程池(称为ForkJoinPool)中的工作线程。把任务提交到这个池,必须 ......
数据处理 数据 Dating Java8 Java

Dating Java8系列之default默认方法

给我馍馍/文 引言 传统上,Java程序的接口是将相关方法按照约定组合到一起。实现接口的类必须为接口中定义的每个方法提供一个实现,或者从父类中继承它的实现。 不断迭代的API 默认方法的引入就是为了,以兼容的方式,解决像 Java API这样的类库,演进迭代问题。 理解演进迭代 为了理解为什么一旦A ......
default 方法 Dating Java8 Java

Dating Java8系列之Lambda表达式和函数式接口(上)

给我馍馍/文 Lambda简介 我们可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式。它没有名称,但它有参数列表、函数主体、返回类型,可能还有一个可以抛出的异常列表。 匿名:我们说匿名,是因为它不像普通的方法那样有一个明确的名称。 函数:我们说它是函数,是因为Lambda函数不像方 ......
表达式 函数 接口 Dating Lambda

Dating Java8系列之Lambda表达式和函数式接口(下)

给我馍馍/文 使用函数式接口 函数式接口定义且只定义了一个抽象方法。 函数式接口很有用, 因为抽象方法的签名可以描述Lambda表达式的签名。 为了应用不同的Lambda表达式,你需要一套能够描述常见函数描述符的函数式接口。 Java 8的库设计师帮我们在java.util.function包中引入 ......
表达式 函数 接口 Dating Lambda

Dating Java8系列之巧用Optional之优雅规避NPE问题

给我馍馍/文 避之不及的 NullPointerException NPE : NullPointerException 空指针异常是最常见的Java异常之一,抛出NPE错误不是用户操作的错误,而是开发人员的错误,应该被避免,那么只能在每个方法中加入非空检查,阅读性和维护性都比较差。 以下是一个常见 ......
Optional Dating 问题 Java8 Java

Dating Java8系列之新的日期和时间

给我馍馍/文 旧的日期时间 在Java 1.0中,对日期和时间的支持只能依赖java.util.Date类。正如类名所表达的,这个类无法表示日期,只能以毫秒的精度表示时间。更糟糕的是它的易用性,由于某些原因和未知的设计决策,这个类的易用性被深深地损害了,比如:年份的起始选择是1900年,月份的起始从 ......
日期 时间 Dating Java8 Java

代码随想录 day17 平衡二叉树 二叉树的所有路径 左叶子之和

平衡二叉树 之前一直写迭代代码 没有怎么写递归 正好这题不是很好写迭代 练习一下递归 这题递归逻辑相对简单 左右子树高度差判断是不是大于一 可以直接返回结果 不大于一就高度max(l,r)+1 二叉树的所有路径 关键要点 这题适合先序遍历 回溯过程和递归过程是一起写的 进来几次就回溯几次 这样才能回 ......
随想录 之和 随想 路径 叶子

多线程(Java.Thread)学习

多线程(Java.Thread)学习 线程简介: 1、线程是独立执行的路径 2、程序运行时有很多后台进程 比如主线程、young.gc、full.gc() 3、main是主线程,系统入口,用于执行整个程序 4、一个进程中、如果开辟多个线程,线程的运行由调度器安排调度、调度器的先后顺序不能人为干预 5 ......
线程 Thread Java

代码优化

1.搭建minio 2.修改后端文件上传接口 在用户添加service中将avatar的值设置为 修改上传接口 3.修改不能修改用户名 在添加用户的index.vue中添加账户绑定disable默认值为false,用来控制修改的不能修改用户名 4.上传文件优化 把img的地址改为form.avata ......
代码

文心一言 VS 讯飞星火 VS chatgpt (177)-- 算法导论13.3 6题

六、用go语言,说明如果红黑树的表示中不提供父指针,应当如何有效地实现 RB-INSERT。 文心一言: 红黑树是一种自平衡的二叉搜索树,其中每个节点都包含一个颜色属性(红色或黑色),并且满足以下性质: 节点是红色或黑色。 根节点是黑色。 所有叶子节点(NIL或空节点)都是黑色。 如果一个节点是红色 ......
文心 导论 算法 chatgpt VS

1.java概述

第一章 java概述 java的主要特点: 1.java是面向对象的 2.Java 语言是健壮的。Java 的强类型机制、异常处理、垃圾的自动收集等是 Java 程序健壮性的重要保证 3.Java 语言是跨平台性的。[即: 一个编译好的.class 文件可以在多个系统下运行,这种特性称为跨平台] 4 ......
java

Java实现单机百万并发

摘要: 在互联网时代,高并发是必不可少的。Java是目前最流行的编程语言之一,那么如何在Java中实现单机百万并发呢?本文将介绍一些实现单机百万并发的思路和方法。 正文: Java实现单机百万并发,主要需要解决以下两个问题: 如何突破操作系统的文件句柄限制 如何优化应用程序的性能 突破操作系统的文件 ......
单机 Java

gitlab 提交代码自动重启服务/执行脚本/远程服务器脚本

1. 在服务器中安装gitlab-runner ```sh # https://docs.gitlab.com/runner/install/ apt install gitlab-runner ``` 2. 将gitlab-runner 注册到gitlab服务中 ```sh gitlab-runn ......
脚本 代码 服务器 gitlab

java jdk @Resource注入

@Resource注解 和 @Autowired注解 有什么区别? @Resource注解是JDK扩展包中的,也就是说属于JDK的一部分。所以该注解是标准注解,更加具有通用性。(JSR-250标准中制定的注解类型。JSR是Java规范提案。) @Autowired注解是Spring框架自己的。 @R ......
Resource java jdk

限流:计数器、漏桶、令牌桶 三大算法的原理与实战(史上最全)

限流:计数器、漏桶、令牌桶 三大算法的原理与实战(史上最全) 令牌桶算法原理及实现(图文详解) https://mikechen.cc/20379.html Redis 实现限流的三种方式 https://juejin.cn/post/7033646189845151757 ......
令牌 算法 计数器 实战 原理

应用层限流——四种接口限流算法原理及实现

1 限流介绍 1.1 什么是限流 顾名思义,就是流量限制。限流是对服务下游的保护,保证在大量请求面前,还能从容不迫的提供正常服务; 限流是对某一时间窗口内的请求数进行限制,保持系统的可用性和稳定性,防止因流量激增而导致的系统运行缓慢或宕机。 1.2 为什么要限流 当瞬时海量请求传入服务下游,往往会对 ......
应用层 算法 接口 原理

面试题:Java中的引用类型有哪几种?特点是什么?

Java中引用类型及特点 强 引用: 最普通的引用 Object o = new Object() 软 引用: 垃圾回收器, 内存不够的时候回收 (缓存) 弱 引用: 垃圾回收器看见就会回收 (防止内存泄漏) 虚 引用: 垃圾回收器看见二话不说就回收,跟没有一样 (管理堆外内存) DirectByt ......
特点 类型 Java

POT超阈值模型和极值理论EVT分析|附代码数据

全文链接:http://tecdat.cn/?p=16845 最近我们被客户要求撰写关于极值理论的研究报告,包括一些图形和统计输出。 本文依靠EVT对任何连续分布的尾部建模。尾部建模,尤其是POT建模,对于许多金融和环境应用至关重要 POT模型其主要动机是为高洪水流量的概率模型提供实用工具。但是,E ......
极值 阈值 模型 理论 代码

matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类|附代码数据

全文下载链接:http://tecdat.cn/?p=19751 本示例说明如何使用长短期记忆(LSTM)网络对序列数据进行分类 。 最近我们被客户要求撰写关于LSTM的研究报告,包括一些图形和统计输出。 要训练深度神经网络对序列数据进行分类,可以使用LSTM网络。LSTM网络使您可以将序列数据输入 ......
数据 神经网络 序列 长短 神经

TSINGSEE青犀视频智能分析网关V4烟火检测算法解决方案

AI烟火检测算法是安防领域中一种重要的技术手段,它可以有效地检测和预防火灾等危险情况。在安防场景中,烟火检测算法可以应用于多个领域,如森林防火、商场楼宇、工厂工地、校园、社区、仓库等场景中。 ......
网关 算法 烟火 TSINGSEE 解决方案

吴师兄学算法day06 双指针 485. 最大连续 1 的个数

题目:485. 最大连续 1 的个数 易错点: 代码示例: class Solution: def findMaxConsecutiveOnes(self, nums: List[int]) -> int: cnt = 0 max_cnt = 0 for i in nums: if i == 1: ......
指针 师兄 算法 个数 day

Java入门

目标:掌握类与对象的一些注意事项。 1).类名建议使用英文单词,首字母大写,满足驼峰模式,且要有一定的含义,例如:Student 2).类中定义的变量称为成员变量(对象的属性),类中定义的方法称为成员方法(对象的行为)。 3).成员变量本身存在默认值,一般在定义成员变量时不需要赋初始值。 4).一个 ......
Java

不起眼但是很要命的Java小细节 -- 短路与和与、短路或和或的区别

在实际开发时,开发者常常会直接使用短路与,短路或. 一般情况下是不会有问题的,但是在某些场景下,会因为开发者遗忘的短路语法细节导致程序走向不符合预期的流程. 基础语法 &&(短路与)与 &(非短路与)的区别: 最终结果都是一样的 &&: 具有短路的效果。左边是false,右边就不执行 &: 不具有短 ......
细节 Java
共21000篇  :2/700页 首页上一页2下一页尾页