- 选一个简单的数据结构聊一聊,话说有很多数据结构都在玩组合拳,比如说:块状链表,块状数组,当然还有本篇的双端队列,是的,它就是 栈和队列的组合体。 一:概念 我们知道普通队列是限制级的一端进,另一端出的FIFO形式,栈是一端进出的LIFO形式,而双端队列就没有这样的限制级,也就是我们可以在 队列两端进行插入或者... 选一个简单的数据结构聊一聊,话说有很多数据结构都在玩组合拳,比如说:块状链表,块状数组,当然还有本篇的双端队列,是的,它就是 栈和队列的组合体。 一:概念 我们知道普通队列是限制级的一端进,另一端出的FIFO形式,栈是一端进出的LIFO形式,而双端队列就没有这样的限制级,也就是我们可以在 队列两端进行插入或者...
- 题目描述: 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,... 题目描述: 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,...
- 消费消息需要考虑: 会不会重复消费能不能避免重复消费重复消费了也别造成系统异常可以吗 使用MQ如何保证幂等性也是架构设计考虑的问题。 rabbitmq、rocketmq、kafka,都可能会出现消费重复消费,因为这个问题不是MQ自身保证的,是我们开发自己需要保证的。 何时重复消费? kafka有个offset概念,每个消息写进去,都有一个offset,代表他的... 消费消息需要考虑: 会不会重复消费能不能避免重复消费重复消费了也别造成系统异常可以吗 使用MQ如何保证幂等性也是架构设计考虑的问题。 rabbitmq、rocketmq、kafka,都可能会出现消费重复消费,因为这个问题不是MQ自身保证的,是我们开发自己需要保证的。 何时重复消费? kafka有个offset概念,每个消息写进去,都有一个offset,代表他的...
- 该插件主要是在mapper接口方法和mapper XML文件之间来回切换非常方便,极大的提高了开发效率 我们知道,mapper 接口一般会定义很多数据层从操作 API,如果没有映射,一个个去 xml 文件中寻找对应 sql 语句,无异于大海捞针,效率奇低!赶紧让我们把三剑客之一用起来! 在IDEA的设置中搜索 Plugins - free Mybatis Plugi... 该插件主要是在mapper接口方法和mapper XML文件之间来回切换非常方便,极大的提高了开发效率 我们知道,mapper 接口一般会定义很多数据层从操作 API,如果没有映射,一个个去 xml 文件中寻找对应 sql 语句,无异于大海捞针,效率奇低!赶紧让我们把三剑客之一用起来! 在IDEA的设置中搜索 Plugins - free Mybatis Plugi...
- 迭代对于我们搞 Java 的来说绝对不陌生。我们常常使用 JDK 提供的迭代接口进行 Java 集合的迭代。 Iterator iterator = list.iterator(); while(iterator.hasNext()){ String string = iterator.next(); //do something } 12345 迭代其实我们可以简... 迭代对于我们搞 Java 的来说绝对不陌生。我们常常使用 JDK 提供的迭代接口进行 Java 集合的迭代。 Iterator iterator = list.iterator(); while(iterator.hasNext()){ String string = iterator.next(); //do something } 12345 迭代其实我们可以简...
- 1 程序主入口 src/java.base/share/native/launcher/main.c main函数返回了JLI_Launch()函数,位于 src/java.base/share/native/libjli/java.c 2 java.c # JLI_Launch() JavaMain()是Java主程序的native调用。 在该方法里会执行... 1 程序主入口 src/java.base/share/native/launcher/main.c main函数返回了JLI_Launch()函数,位于 src/java.base/share/native/libjli/java.c 2 java.c # JLI_Launch() JavaMain()是Java主程序的native调用。 在该方法里会执行...
- 0 前言 全是干货的技术殿堂 文章收录在我的 GitHub 仓库,欢迎Star/fork: Java-Interview-Tutorial https://github.com/Wasabi1234/Java-Interview-Tutorial 真正的启动是在 catalina.sh 设置startup.sh 只是找到catalina.sh 然后执行c... 0 前言 全是干货的技术殿堂 文章收录在我的 GitHub 仓库,欢迎Star/fork: Java-Interview-Tutorial https://github.com/Wasabi1234/Java-Interview-Tutorial 真正的启动是在 catalina.sh 设置startup.sh 只是找到catalina.sh 然后执行c...
- 1 简介 支持水平和垂直滚动视图。文本区域、表格等需要显示较多数据而空间又有限时,通常使用 JScrollPane 进行包裹以实现滚动显示。 JScrollPane 内包含一个视口 表示 JScrollPane 的显示区域。 视口内包含一个需要滚动显示的组件,称为视图。 构造方法 参数说明: view: 需要滚动显示的视图组件vsbPolicy: 垂直滚动条... 1 简介 支持水平和垂直滚动视图。文本区域、表格等需要显示较多数据而空间又有限时,通常使用 JScrollPane 进行包裹以实现滚动显示。 JScrollPane 内包含一个视口 表示 JScrollPane 的显示区域。 视口内包含一个需要滚动显示的组件,称为视图。 构造方法 参数说明: view: 需要滚动显示的视图组件vsbPolicy: 垂直滚动条...
- 最近,某台词本火了,如下。我们来一一解析下。 那些口口声声,JAVA越来越难学的人,应该看着你们,像我一样。我看着你们,满怀羡慕。人类研究了几十年的代码调优,所有的Exception和Error,像是专门为你们准备的礼物。 因为 Java的异常体系考虑的的确周到,周到到被人认为是繁琐的地步。真是笑死人了这点。 Spring繁荣、中间件繁茂、数据... 最近,某台词本火了,如下。我们来一一解析下。 那些口口声声,JAVA越来越难学的人,应该看着你们,像我一样。我看着你们,满怀羡慕。人类研究了几十年的代码调优,所有的Exception和Error,像是专门为你们准备的礼物。 因为 Java的异常体系考虑的的确周到,周到到被人认为是繁琐的地步。真是笑死人了这点。 Spring繁荣、中间件繁茂、数据...
- 1 简介 一个线程集合。是为了更方便地管理线程。父子结构的,一个线程组可以集成其他线程组,同时也可以拥有其他子线程组。 从结构上看,线程组是一个树形结构,每个线程都隶属于一个线程组,线程组又有父线程组,根线程组——System线程组。 2 线程组树的结构 JVM创建的system线程组是用来处理JVM的系统任务的线程组,例如对象的销毁等system线程组的直接子... 1 简介 一个线程集合。是为了更方便地管理线程。父子结构的,一个线程组可以集成其他线程组,同时也可以拥有其他子线程组。 从结构上看,线程组是一个树形结构,每个线程都隶属于一个线程组,线程组又有父线程组,根线程组——System线程组。 2 线程组树的结构 JVM创建的system线程组是用来处理JVM的系统任务的线程组,例如对象的销毁等system线程组的直接子...
- 大部分的Java对象只存活一小段时间,而存活下来的小部分Java对象则会存活很长一段时间 pmd中Java对象生命周期的直方图,红色的表示被逃逸分析优化掉的对象 之所以要提到这个假设,是因为它造就了Java虚拟机的分代回收思想 就是将堆空间划分为两代,分别叫做新生代和老年代新生代用来存储新建的对象当对象存活时间够长时,则将其移动到老年代 Java虚拟机可以给不同... 大部分的Java对象只存活一小段时间,而存活下来的小部分Java对象则会存活很长一段时间 pmd中Java对象生命周期的直方图,红色的表示被逃逸分析优化掉的对象 之所以要提到这个假设,是因为它造就了Java虚拟机的分代回收思想 就是将堆空间划分为两代,分别叫做新生代和老年代新生代用来存储新建的对象当对象存活时间够长时,则将其移动到老年代 Java虚拟机可以给不同...
- 1 redis不可用是什么? 机器死了,宕机了 jvm进程oom了,挂了 机器cpu打满了,不工作了, hang死了 磁盘突然满了,系统各种IO报错了,不工作了 不可用 请求过来,什么都没有空了,没有任何的响应,系统run不起来了,也没法卖东西了。 各种原因,都可能导致你的系统就挂掉了,没法对外提供服务了。 一帮人,工程师,连夜抢修,但是,问题在于,在抢... 1 redis不可用是什么? 机器死了,宕机了 jvm进程oom了,挂了 机器cpu打满了,不工作了, hang死了 磁盘突然满了,系统各种IO报错了,不工作了 不可用 请求过来,什么都没有空了,没有任何的响应,系统run不起来了,也没法卖东西了。 各种原因,都可能导致你的系统就挂掉了,没法对外提供服务了。 一帮人,工程师,连夜抢修,但是,问题在于,在抢...
- 0 Github 1 面试题 如何设计一个类似Dubbo的RPC框架 2 考点分析 就跟问你如何设计一个MQ一样的道理,就考两个: 你有没有对某个RPC框架原理有非常深入的理解你能不能从整体上来思考一下,如何设计一个rpc框架,考考你的系统设计能力 3 解决方案 其实一般问到你这问题,你起码不能认怂,因为这既然是面试突击教程,那不可能给你深入讲解什么kaf... 0 Github 1 面试题 如何设计一个类似Dubbo的RPC框架 2 考点分析 就跟问你如何设计一个MQ一样的道理,就考两个: 你有没有对某个RPC框架原理有非常深入的理解你能不能从整体上来思考一下,如何设计一个rpc框架,考考你的系统设计能力 3 解决方案 其实一般问到你这问题,你起码不能认怂,因为这既然是面试突击教程,那不可能给你深入讲解什么kaf...
- 网络编程的本质是进程间通信 2 通信的基础是IO模型 输入流 文件,Java对象,字符串都可以是数据源 输出流 3 java.io 家族 字符流 字节流 4 设计模式 - 装饰器模式 奶茶店里面的装饰器模式(珍珠只是装饰) Socket也是一种数据源 Socket是网络通信的端点 Unix中的Socket是什么 ... 网络编程的本质是进程间通信 2 通信的基础是IO模型 输入流 文件,Java对象,字符串都可以是数据源 输出流 3 java.io 家族 字符流 字节流 4 设计模式 - 装饰器模式 奶茶店里面的装饰器模式(珍珠只是装饰) Socket也是一种数据源 Socket是网络通信的端点 Unix中的Socket是什么 ...
- 1 SimpleDateFormat 之坑 1.1 格式化 1.1.1 案例 初始化一个Calendar,设置日期2020年12月29日 日志 这是由于混淆SimpleDateFormat的各种格式化模式: 小写y是年大写Y是week year,即所在的周属于哪一年 一年第一周的判断方式 从getFirstDayOfWeek()开始,完整的7天,... 1 SimpleDateFormat 之坑 1.1 格式化 1.1.1 案例 初始化一个Calendar,设置日期2020年12月29日 日志 这是由于混淆SimpleDateFormat的各种格式化模式: 小写y是年大写Y是week year,即所在的周属于哪一年 一年第一周的判断方式 从getFirstDayOfWeek()开始,完整的7天,...
上滑加载中
推荐直播
-
华为云码道 × 仓颉编程:工程化AI编码探索2026/05/27 周三 19:00-21:00
刘俊杰-华为云仓颉语言专家/李炎-华为云码道技术专家/王智鹏-OpenCangjie开源社区发起人
本场直播围绕华为云仓颉语言与华为云码道的深度结合,展示华为云智能编程从零基础到高效落地的完整生态能力。以华为云码道为引擎,仓颉语言为载体,带给大家日常提效、趣味创新到极速量产的开发体验。
回顾中
热门标签