算法floyd java

【Java集合】来了两个“插班生”如何打印花名册,以数组案例带你搞懂Collection集合概念

嗨~ 今天的你过得还好吗? 每件事情都会好起来的 到那时风变得软绵绵的 阳光也会为你而温暖 🌞 前言 这个系列是我在学习Java集合这部分时候,结合书籍和Java提供的api整理的部分知识,也参考了一些网络上的文章,如果错误,望大家指出。希望本系列文章对大家学习Java有所帮助,也可以回顾下这部分 ......
插班生 花名册 花名 数组 Collection

《Java 并发编程的艺术》实验03 等待通知机制的实现

等待通知机制的实现 需求分析 实验内容 设计一个任务队列,多个任务线程同时从队列中取出任务进行处理。当任务队列为空时,任务线程需要进入等待状态,直到新的任务到达。当有新的任务到达时,需要通知其中一个任务线程来处理新任务。 基于 Object Monitor 实现 实验目的 学习如何使用等待通知机制来 ......
机制 艺术 Java

《Java 并发编程的艺术》实验02-4 JUC Executor的使用

Executor 框架的使用 ThreadPoolExecutor 简介 Executor 机制实现了工作单元和执行机制的分离 ThreadPoolExecutor 实现了 Executor 接口,是 Java 线程池的根本实现类之一。它提供了更丰富的配置参数,例如核心线程数、最大线程数、线程空闲时 ......
Executor 艺术 Java JUC 02

《Java 并发编程的艺术》实验02-1 JUC 并发容器和框架的使用

JUC 并发容器和框架的使用 ConcurrentHashmap 简介 线程安全的哈希表,Hashmap 在 多线程环境下的替代 实验 实验目的:了解并发容器 ConcurrentHashmap 的使用方法 实验内容: 基础:直接使用 Thread 实现 多个线程同时往ConcurrentHashM ......
容器 框架 艺术 Java JUC

《Java 并发编程的艺术》实验02-2 JUC 原子操作类的使用

JUC 原子操作类的使用 实验目的 掌握Java原子类的使用方法,了解原子类在多线程环境下的特点和使用场景。 实验过程 导入Java原子类的库 创建AtomicInteger对象 使用原子方法对count进行操作 实验参考代码 public class AtomicExample { public ......
原子 艺术 Java JUC 02

《Java 并发编程的艺术》实验02-3 JUC 并发工具类的使用

JUC 并发工具类的使用 CountDownLatch 简介 CountDownLatch 是Java并发包中的一个基本类,它可以用来在多个线程间同步操作。 其主要功能是允许一个或多个线程等待,直到其他线程完成它们的操作后再继续执行。 CountDownLatch 是通过一个计数器实现的,计数器的初 ......
工具 艺术 Java JUC 02

Java - 为什么静态方法不需要通过 new 对象就可以调用,而普通方法需要?

在 Java 中,通过类名来调用静态方法的原理涉及到类加载和类初始化的过程。 类加载:当 Java 程序执行时,类加载器负责加载类的字节码文件到内存中。这是一个类的元数据加载过程,其中包括类的字段、方法、构造函数等信息。静态方法本身也是类的一部分,因此在类加载的过程中,静态方法也会被加载到内存中。 ......
方法 静态 对象 Java new

从CAP理论到Raft算法

什么是分布式系统 分布式系统是支持分布式处理的软件系统,是由通信网络互联的多处理机体系结构上执行任务的系统。 一个业务拆分为多个子业务,落地成不同的服务,将各个服务部署在不同的容器上。各个服务之间通过某种协议通信交互。 好处是有更好的可靠性,可扩展性,但也带来了一致性问题。所以碰到分布式系统,主要就 ......
算法 理论 Raft CAP

redis + lua 限流 算法 滑动窗口 漏桶 令牌桶

redis + lua 限流 算法 滑动窗口 漏桶 令牌桶 /** * @Author liyichuan * @Date 2023/10/31 9:50 */ @Data public class RateLimiterHandle { /** * 补给率 */ private double re ......
令牌 算法 redis lua

Java模块化应用实践之精简JRE(内含开源)

Java9及以后的版本引入了模块化特性,实际实践了一段时间之后发现“真香!”现在把“利用Java模块化精简JRE”的方法和经验分享给大家。 ......
模块 Java JRE

Java 通过collectors.groupingBy根据某个字段统计

要使用Collectors.groupingBy根据某个字段统计,你可以通过提供一个函数来指定分组的条件。 假设你有一个包含Person对象的列表,每个对象都有age字段表示年龄,你想要根据年龄分组,并统计每个年龄组的人数。以下是一个使用Collectors.groupingBy的示例代码: imp ......
字段 collectors groupingBy Java

File --JAVA

File --JAVA 构造方法 方法说明 public File (String pathname) 根据文件路径创建对象 public File (String parent, String child) 根据父路径名字字符串和子路径名字符串创建文件对象 public File (String ......
File JAVA

java实现文件夹上传功能实例代码(SpringBoot框架)

前言 有时我们后台管理等服务可能会有这样一个简单需求,就是根据文件夹将整个文件夹下的所有资源都上传到我们的服务器上,本人也是搜索了大量资料,最终以最简单便捷的方式实现该功能,具体操作步骤如下 一、前端如何设置上传组件并将资源上传到后台服务 这里的项目框架为若依VUE版本,下面将核心的代码抽离出来进行 ......
SpringBoot 文件夹 框架 实例 代码

10.31算法

最长回文子串给你一个字符串 s,找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。 示例 1: 输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2: 输入:s = "cbbd"输出:"bb" class Solutio ......
算法 10.31 10 31

java根据模板生成表格和列表

1、模板 所有的标签都是以 {{开始,以}} 结束。 {{template}} 文本 {{@template}} 图片 {{#template}} 表格 {{*template}} 列表 {{+template}} Word 文档合并 {{?template}}{{/template}} if 和 ......
表格 模板 java

Java 使用`Collectors.groupingBy`计算百分比

要使用Collectors.groupingBy计算百分比,你需要先对数据进行分组,然后计算每个组内元素的百分比。 假设你有一个包含整数的列表,你想要按照它们的奇偶性进行分组,并计算每个组内元素的百分比。以下是一个使用Collectors.groupingBy和自定义收集器的示例代码: import ......
百分比 百分 Collectors groupingBy Java

【tus】SpringBoot可恢复文件上传tus-java-client库的使用

1、说明tus是一种基于HTTP的可恢复文件上传协议。可恢复意味着上传可以随时中断,并且可以恢复,而无需再次重新上传以前的数据。如果用户想要暂停,中断可能会自动发生,或者在网络问题或服务器中断的情况下意外发生。 tus-java-client是一个库,用于使用tus协议将文件上载到支持它的任何远程服 ......
tus-java-client SpringBoot tus 文件 client

java8 集合操作功能

Java 8引入了许多新的集合操作功能,包括但不限于以下几项: forEach:使用Lambda表达式遍历集合中的每个元素。 stream:将集合转换为流,以便进行各种操作,如过滤、映射、排序等。 filter:根据指定的条件过滤集合中的元素,并返回过滤后的结果。 map:将集合中的每个元素映射为另 ......
功能 java8 java

Java 8 Lambda 表达式语法格式代码示例

Java 8引入了Lambda表达式,它是一种简洁而强大的编程语法。Lambda表达式可以作为参数传递给方法,或者用于函数式接口的实现。 Lambda表达式的语法非常简单。它由箭头(->)分为两部分:左侧是参数列表,右侧是表达式体。参数列表可以省略类型,编译器会根据上下文自动推断出类型。表达式体可以 ......
表达式 示例 语法 代码 格式

java通过ssl连接mysql(linux)

环境:Os:centos 7mysql:5.7.29java运行客户端:windows10 1.查看服务器的证书文件mysql数据data目录下 [root@localhost data]# pwd /opt/mysql57/data [root@localhost data]# ls -al *. ......
mysql linux java ssl

java怎么递归

在Java中,递归(Recursion)是指一个方法在其内部调用自身的过程。递归通常用于解决可以被分解成相似子问题的问题。在编写递归函数时,需要定义递归的结束条件,以防止无限循环。 下面是一个简单的递归示例,演示了如何使用递归计算一个数的阶乘: public class Main { public ......
java

明解Java第二章练习题答案

练习2-1 请对代码清单2-6的2处进行修改,将带有小数部分的实数值赋给x和y,查看结果如何? 答案:编译器会报错,因为小数的默认类型double是比int更大的类型。如果给double类型的变量赋值整数,则编译器不会报错。 练习2-2 请编写一段程序,对三个int型变量进行赋值,并计算合计值和平均 ......
练习题 答案 第二章 Java

java 上传大文件

Java上传大文件实现方法简介在开发过程中,我们经常会遇到需要上传大文件的需求。本文将教会你如何用Java实现上传大文件的功能。 整体流程首先,让我们来看一下实现上传大文件的整体流程。下面是一个流程表格: 步骤 描述1 创建一个文件上传表单2 在后端编写一个接收上传文件的控制器3 将上传的文件保存到 ......
文件 java

java设计模式之策略模式的优雅实现

策略模式是开发中常用的一种设计模式,主要解决在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护的问题。看了网上很多关于策略模式的上下文切换类实现都不甚优雅,故而想总结分享一篇自我感觉比较优雅的处理方式,方便大家一起学习。方式一:使用@PostConstruct初始化到map中 ......
模式 设计模式 策略 java

Java MVEL表达式注入漏洞原理研究

一、Java MVEL表达式原理 MVEL全称为:MVFLEX Expression Language,是用来计算Java语法所编写的表达式值的表达式语言。MVEL的语法很大程度上受到Java语法的启发,但为了使表达式语法更高效,还是有一些基本差异,例如可以像正则表达式一样直接支持集合、数组和字符串 ......
表达式 漏洞 原理 Java MVEL

Java SPEL表达式注入漏洞原理研究

一、Java SpEL表达式基本原理 SpEL(Spring Expression Language)简称Spring表达式语言,在Spring 3中引入。 SpEL能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,可以与基于XML和基于注解的Spring配置还有bean定义一起使用。 在 ......
表达式 漏洞 原理 Java SPEL

crypto常用算法

欧几里得算法(辗转相除法) def gcd(a, b): if b == 0: return a else: return gcd(b, a % b) 扩展欧几里得算法 def ext_euclid(a, b): if b == 0: return 1, 0, a else: x, y, q = e ......
算法 常用 crypto

Java基本数据类型

1.数据类型 1.1基本数据类型 整数型:byte(1字节)、short(2字节)、int(4字节)、long(8字节) 浮点型:float(4字节)、double(8字节) 字符型:char(2字节) 布尔类型:boolean(1字节) short和char都是两字节,实际容量相同,但是short ......
类型 数据 Java

R语言非参数方法:使用核方法和K-NN(k近邻算法)分类预测心脏病数据|附代码数据

原文链接: http://tecdat.cn/?p=22181 原文出处:拓端数据部落公众号 最近我们被客户要求撰写关于非参数方法的研究报告,包括一些图形和统计输出。 本文考虑一下基于核方法进行分类预测。注意,在这里,我们不使用标准逻辑回归,它是参数模型。 非参数方法 用于函数估计的非参数方法大致上 ......
方法 数据 近邻 心脏病 算法

学习笔记432—VBM_DARTEL算法对灰质变化的计算

VBM_DARTEL算法对灰质变化的计算 根据一些文献得知,VBM目前比较新的算法是DARTEL算法,这一算法被集成在SPM里,这里记录一下做法。VBM是对T1像进行分割得到灰质等。所以要有结构T1加权像数据。整个流程应该是这样: 1.手动调整前联合(AC) 首先就是需要我们自己手动调整一下结构像, ......
灰质 算法 VBM_DARTEL 笔记 DARTEL