模块 项目java 01
[Java]线段树
# 线段树 ## 不含懒标记(单点修改) ![image-20230704210835506](https://pic-typora-nb.oss-cn-hangzhou.aliyuncs.com/img/image-20230704210835506.png) ### 代码 **维护区间最大/最小 ......
算法学习day06哈希表part01-242、349、202、1
package SecondBrush.Hash; /** * 242.有效字母异位词 * 现在看到这个题目能想到怎么做,但是具体不知道怎么写 * 大致思路自己先描述一下: * 就是建立一个hash表,然后遍历s,写进表中,遍历t,减去对应的数 * hash表就可以理解为数组 */ public c ......
面试类-Java基础 (一)
JVM、JDK 和 JRE 有什么区别? JVM:Java Virtual Machine,Java 虚拟机,Java 程序运行在 Java 虚拟机上。针对不同系统的实现(Windows,Linux,macOS)不同的 JVM,因此 Java 语言可以实现跨平台。 JRE: Java 运⾏时环境。它 ......
pytest + yaml 框架 -46.支持模块级别和用例级别参数化
# 前言 对`parameters` 功能做了优化,支持模块级别和用例级别参数化 - config 中 parameters 参数化,作用域是整个模块级别 - 用例中 parameters 参数化,作用域只针对单个用例 v1.3.7 版本优化此功能 # 模块级别参数化 config 中 parame ......
Java算法排序之冒泡/插入/选择/快速、二分查找 - 附动图
1. Java排序:冒泡排序 - 最简单 (1)比较前后相邻的二个数据,如果前面数据大于后面的数据,就将这二个数据交换。 (2)这样对数组的第 0 个数据到 N-1 个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。 (3)N=N-1,如果 N 不为 0 就重复前面二步,否则排序完成 ......
面试现场简单几道java算法题, 你能写出几道?
这两天小编逛论坛的时候发现一个很有意思的事情,就是一位互联网公司的面试官分享的,他们最近想招一批java的实习生,所以他们的面试题并不难,但是前来面试的人,却很多都挂在了几道算法题上,要么就是逻辑不严谨,要么就是题目都看不懂的,还有就是书写错误的,这让他感到很诧异,毕竟算法其实对于程序员来讲应该是很 ......
Java源码系列4——HashMap扩容时究竟对链表和红黑树做了什么?
Photo by hippopx.com 我们知道 HashMap 的底层是由数组,链表,红黑树组成的,在 HashMap 做扩容操作时,除了把数组容量扩大为原来的两倍外,还会对所有元素重新计算 hash 值,因为长度扩大以后,hash值也随之改变。 如果是简单的 Node 对象,只需要重新计算下标 ......
Java命名规范
## Controller 查询方法(使用 query 做前缀) 新增方法(使用 add 做前缀) 修改方法(使用 modify 做前缀) 删除方法(使用 delete 做前缀) ## Service 分页查询方法(使用 page 做前缀) 查询单个对象方法(使用 get 做前缀) 查询多个对象方法 ......
Java设计模式——23种设计模式总结
一、什么是设计模式 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石 ......
Java23种设计模式和六大设计原则
1、设计模式的六大原则 ☛开闭原则 对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。 ☛里氏代换原则 里氏代换原则是面向对象设计 ......
java23种设计模式—— 一、设计模式介绍
Java23种设计模式全解析 一、设计模式简介 设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。 设计模式是 ......
“阿里爸爸”上新!《2023阿里Java性能调优手册(实战参考)》
为什么要学Java性能调优? 现在去学性能调优还有用么? 现在行业变化太快,裁员缩招屡见不鲜,而应对的方法即是--核心竞争力。打磨自己的专业技能,成为本职行业的前百分之二十,行业再怎么变动,你总能安身立命。 在任何一个细分领域内,成为前1%,拼的是天赋,是智力决定的。但若仅仅想要成为20%,成为被二 ......
Java17新特性及代码示例:还在使用Java8? 这5个Java17新功能,你会喜欢的
SpringBoot3.0最低支持JDK17,各开源软件正在全面拥抱JDK17. 有升级计划的调查受访者中,37%的人计划在未来六个月内升级到2021年9月份发布的LTS版本JDK 17。另有25%的人计划在未来6到12个月内升级到JDK 17。 这5个你喜欢的JDK17新功能,会让你升级JDK17 ......
SpringBoot3.0从入门到项目实战:解决Web应用痛点的最新解决方案
SpringBoot3.0从入门到项目实战:解决Web应用痛点的最新解决方案 SpringBoot是当前Java领域中应用最广的框架之一,而随着SpringBoot 3.0的发布,它迎来了更加全面和强大的一次升级。本文将深入浅出地介绍SpringBoot 3.0的新特性,同时结合实际项目经验,分享W ......
Java9-17新特性解读+案例+说明+注意+发展趋势
前言 Java8出来这么多年后,已经成为企业最成熟稳定的版本,相信绝大部分公司用的还是这个版本,但是一眨眼今年Java19都出来了,相信很多Java工程师忙于学习工作对新特性没什么了解,有的话也仅限于某一块。 本篇就是博主对自己感觉有用的新特性做了一个案例验证及简要说明,整合起来分享给大家。 特别说 ......
JAVA第十一次作业
1、编写一个程序,实现从命令行参数输入两个字符串类型的数值,并计算输出两个数值的和。 package www; import java.util.Scanner; public class ooo { public static void main(String[] args) { Scanner ......
白嫖!字节跳动 Java岗顶级面试解析(2023版),GitHub巅峰神作!
开始之前,先说一下我非常推荐的一种学习方式: 带着问题学习或者准备面试。 另外,准备面试的小伙伴,一定要根据自身情况制定好复习计划! 并且,你最好还要时不时自测一下,对着一些面试常见的问题进行自问。 最近,我分析了上百份大中小厂的面经,发现了许多Java 面试中最最最常问的一些问题!并且都在字节跳动 ......
关于JAVA项目公共字段自动填充的理解
公共字段字段填充是什么? “公共字段自动填充”顾名思义,其实就是省略了在程序当中对某些字段手动填写的步骤,大大提高了效率! 为什么要使用公共字段填充技术在我们的程序当中? 在我们项目的开发中,当我们在修改数据库中的某些值的时候,有一些字段属于公共子段,就是有些字段不仅是在某一个表里有,而是好几张表里 ......
边沿检测模块
- always块的信号敏感变量只能有一个时钟和一个复位 # 上升沿检测电路 ![image](https://img2023.cnblogs.com/blog/2954438/202307/2954438-20230704134719055-958709787.png) # 下降沿检测电路 ![i ......
深入理解 Java 反射和动态代理
简介 什么是反射 反射(Reflection)是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。 通过反射机制,可以在运行时访问 Java 对象的属性,方法,构造方法等。 反射的应用场景 反射的主要应用场景有: 开发通用框架 - 反射 ......
Spring Boot 3.0.0 来啦!最小依赖 Java17!升还是不升?
Spring 官方于 2022 年 1 月 20 日发布 Spring Boot 3.0.0-M1 版本,预示开启了 Spring Boot 3.0 的里程碑。 官方公告下的中文评论有点东西。。。熟悉的味道!就是那个味! 分享一篇朋友对 SpringBoot3.0 的介绍:生还是不生? Spring ......
Day01,2023.07.04
行程 9:00 到达上海信息安全测评认证中心(黄浦区陆家浜路1308号)。 9:30 签订协议,领取电脑、本子等。 10:20 确认负责老师,前往所在处:上海电气集团数字科技有限公司(闵行区合川路2555号2号楼)。 11:00 到达,听老师与公司负责人交谈。 11:30--13:00 吃饭休息 1 ......
Java 多线程:彻底搞懂线程池
熟悉Java多线程编程的同学都知道,当我们线程创建过多时,容易引发内存溢出,因此我们就有必要使用线程池的技术了。 最近看了一些相关文章,并亲自研究了一下源码,发现有些文章还是有些问题的,所以我也总结了一下,在此奉献给大家。 目录 1 线程池的优势 总体来说,线程池有如下的优势: (1)降低资源消耗。 ......
GitHub上最热门的Java开源项目
这是一个轻快,简洁,功能强大,使用Java开发的博客系统。 2jeecg-boot https://github.com/zhangdaiscott/jeecg-boot Star 2873 这是一款基于代码生成器的JAVA快速开发平台!提高UI能力的同时,降低前后分离的开发成本,JeecgBoot ......
一定要收藏的5个优秀的SpringCloud开源项目
今天再为大家推荐几个优秀的SpringCloud开源脚手架项目,开箱即用,不管是学习还是开发新项目,都非常不错。 伟大的作家鲁迅先生曾说过:能直接用,绝不重复造轮子 img 好了,不多bb,上才艺! 1、pig 基于 Spring Cloud 2020 、Spring Boot 2.5、 OAuth ......
介绍6款热门的SpringCloud微服务开源项目,总有适合你的!
今天介绍六款比较热门的SpringCloud微服务项目,感兴趣的可以clone下来研究一下,相信对你学习微服务架构很有帮助。 一、Cloud-Platform 介绍 Cloud-Platform是国内首个基于Spring Cloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管 ......
高级Java开发面试常用题的答案
一、数据结构与算法基础 · 说一下几种常见的排序算法和分别的复杂度。 · 用Java写一个冒泡排序算法 /** 现在有一个包含1000个数的数组,仅前面100个无序,后面900个都已排好序且都大于前面100个数字,那么在第一趟遍历后,最后发生交换的位置必定小于100,且这个位置之后的数据必定已经有序 ......
vue项目中锚点定位bug无效和替代方式
在vue项目中,使用锚点定位会和router的规则冲突,在项目中的表现就是第一次点击url改变了,但是没有跳转到锚点位置,再次点击才会跳转。所以在vue项目中定义一个方法不适用锚点定位: scrollToSection(id) { let section = document.getElementB ......
Java数组和数据存储
数组的定义 数组是相同类型数据的有序集合。其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们。 数组的四个基本特点: 1.长度是确定的。数组一旦被创建,它的大小就是不可以改变的。 2.其元素的类型必须是相同类型,不允许出现混合类型。 3.数组类型可以是任何数据类型,包括基本类型 ......