- 博客(18)
- 收藏
- 关注
原创 一个Java程序如何运行起来
注:JIT编译器在程序执行过程中分析代码,将那些频繁执行的代码段编译成本地代码,从而减少了解释器的使用,提高了程序的运行速度。编译优化:对于那些频繁执行的代码段,JIT编译器会将其编译成本地机器代码,并进行优化以提高执行效率。JIT编译器:JIT编译器在程序运行时动态地将部分代码编译成本地代码,适合于提高执行效率和性能。缓存编译结果:编译后的机器码被缓存起来,以便下次执行时可以直接使用,无需再次编译。分析代码:JIT编译器在程序运行时分析代码的使用模式,识别哪些代码段被频繁调用。
2024-08-08 15:47:50
218
原创 Kafka基础知识
Kafka 是一个分布式流处理平台,用于收集、处理、存储和集成大规模数据。它具有高吞吐量、容错性和可伸缩性等特点,被广泛应用于数据集成、流处理、日志聚合等场景。Kafka 的核心概念包括以下内容:事件:事件是由软件或应用程序识别或记录的任何类型的操作、事件或更改。例如,支付、网站点击或温度读数等。主题:主题是 Kafka 中最基本的组织单元,类似于关系型数据库中的表。它是一种逻辑上的数据分类,用于存储相同类型的事件流。
2024-02-22 11:28:21
1189
1
转载 RPC && 序列化与反序列化
在OSI七层协议模型中展现层(Presentation Layer)的主要功能是把应用层的对象转换成一段连续的二进制串,或者反过来,把二进制串转换成应用层的对象–这两个功能就是序列化和反序列化。一般而言,TCP/IP协议的应用层对应与OSI七层协议模型的应用层,展示层和会话层,所以序列化协议属于TCP/IP协议应用层的一部分。序列化: 将数据结构或对象转换成二进制串的过程反序列化:将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程典型的序列化和反序列化过程往往需要如下组件:(1)IDL(I
2022-03-06 23:16:15
359
原创 Java8: Stream
Stream总的来说是基于lambda表达式、方法引用来完成对集合的一些操作。forEachCollection.stream().forEach()和Collection.forEach()之间有什么区别?前者由 Stream.forEach 定义,而后者由 Iterable.forEach 定义。 Stream.forEach 的定义允许以任何顺序处理元素 - 即使对于顺序流也是如此。 (对于并行流, Stream.forEach 很可能会无序处理元素。如果需要有序,使用Stream.forEac
2021-10-26 16:08:50
211
1
原创 开发注意细节
try/catch/finally使用try/catch时,一定要思考清楚在catch中怎样处理,因为catch会将异常吞掉,无人知晓。arr[i]操作做这种操作前,加size判断边界问题。
2021-09-23 20:41:44
89
原创 安装了git以后,idea类名颜色的含义
绿色,已经加入控制暂未提交 (add后,commit前)红色,未加入版本控制蓝色,加入,已提交,有改动白色,加入,已提交,无改动灰色:版本控制已忽略文件。
2021-08-19 11:09:40
247
转载 2021-08-05
.properties配置文件中的常量在xml文件中的引用在配置文件中以键值对形式写好后,在spring配置文件中将配置文件初始化成Bean,然后就可以在其他xml文件中以${…}形式引用<!-- 初始化properties配置文件成bean--><bean id="configProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <pr
2021-08-05 10:44:12
91
转载 【转载】浅谈IOC--说清楚IOC是什么
分享看到的好文博文目录1.IOC的理论背景2.什么是IOC3.IOC也叫依赖注入(DI)4.IOC的优缺点5.IOC容器的技术剖析6.IOC容器的一些产品7.参考博文本文旨在用语言(非代码)说清楚IOC到底是什么,没有什么高深的技术,园中的老牛、大虾们看到这里可以绕行了,以免浪费您宝贵的时间。IOC这个东西DebugLZQ早就想写了,但是出于对文章权威性的考虑(不能误人子弟- -!),本文主要内容来源于最近LZ看的一些国内外的关于IOC的博文、博问,所有引用到的文章,在参考博文中均已注明。
2021-01-24 22:58:42
156
原创 遍历链表时指针的next
遍历链表时指针的next如图,定义一个temp指针遍历已有的链表1->2->3。当改变temp.next时,原链表中的数据也会发生改变。**//定义一个链表**class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}public class Solution { public static void main
2020-07-29 10:27:57
929
原创 八大排序之归并排序
归并排序递归是真的烧脑。 public static void main(String[] args) { int[] arr = new int[80000]; for (int a = 0; a < 80000; a++) { arr[a] = (int) (Math.random() * 8000000); } long l = System.currentTimeMillis();
2020-07-16 14:08:17
131
原创 八大排序之快速排序
快速排序思想:定义数组中的第一个数为标志量,再定义两个指针,一个指针从右向左开始遍历数组,直到找到一个数比标志量小;另一个指针再从左向右遍历数组,直到找到一个数比标志量大。若找到,则交换这两个数的位置,然后重复上述过程。直到两个指针相遇时,交换此时指针指向的数的位置与标志量的位置。此时,标志量左边的数均小于等于标志量,标志量右边的数均大于等于标志量。上代码 public static void quickSort(int[] arr,int low, int high){ if(
2020-07-15 00:00:26
163
原创 八大排序之希尔排序
希尔排序我愿称之为插入排序进化版简洁的来说,先对待排序的数组进行分组处理,再对各小组进行插入排序。直接上代码 public static void main(String[] args) { int[] arr = {5,1,3,2,50,70,4,90}; for (int gap = arr.length / 2; gap > 0; gap /= 2) { for (int i = gap; i < arr.length
2020-07-13 01:24:26
192
原创 八大排序之插入排序
插入排序 先把数组中的第一个数作为插入的比较点。 数组里后面的每一个数的插入比较点为这个数的前一个数。(1)若这个数比它的插入比较点大,则不进行改变,直接进行对后一个数进行分析。(2)若这个数比它的插入比较点小,则将它与它的插入比较点的位置进行交换,交换后再与目前位置的前一个数进行比较,直到找到合适的放置位置。 public static void main(String[] args) { int[] arr = {5,1,3,2,50,70,4,90};
2020-07-11 23:11:22
103
原创 八大排序之选择排序
选择排序每一次排序将当前数组里的“最小值”放置到当前数组中的“第一位”。当将数组长度-1个数放置完成时,排序完成。所以需要两层循环:第一层循环:表示需要进行多少次排序,即需要多少次将当前数组里的“最小值”放置到当前数组中的“第一位”,为数组长度-1次。第二层循环:作用是遍历当前的第一个数之后的数组里面还剩下的数,若这个数比当前的第一个数小,则交换它们之间的位置。代码 public static void main(String[] args) { int[] arr =
2020-07-11 21:48:30
125
原创 IDEA常用快捷键总结
Ctrl+N 查找类Ctrl+F12 查找类中所有方法Ctrl+P 方法参数提示Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+F 查找文本Ctrl+Alt+T可以把代码包在一块内,例如try/catchCtrl+Alt+v生成该对象ctrl+H显示类结构图代码块右移:TAB键代码块左移:shift+TAB键代码块上移:shift+alt +方向键上代码块下移:shift+alt +方向键下...
2020-07-10 23:04:54
125
原创 八大排序之冒泡排序
冒泡排序思路:冒泡,即为在每次排序时,将此时数组内最大的数移到此时的最后一位。第一步:确定有几个数需要放到各自情况的最后一位,答案是数组长度-1个数。第二步:确定第i次将此时的最大数排到此时的最后一位时,需要进行比较多少次,答案是数组长度-1- i次。(因为此时已经确定了i-1个数的位置)所以用两层循环即可实现:第一层:for (int i = 0; i < score.length - 1; i++)第二层:for (int j = 0; j < score.length - 1
2020-07-10 23:02:27
139
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人