自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

AaronYu的博客

持续学习者,全能斜杠男,关注公众号「阿彪的百宝箱」,获取更多技术干货。

  • 博客(35)
  • 收藏
  • 关注

原创 Java 计算每周一的日期

先上正确的写法:public static int getWeekStart() { int num; Calendar calendar = Calendar.getInstance(); int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK) - 1; int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); // 如果是周日,特殊处理

2021-05-30 16:54:09 747

原创 反转链表

今日打卡 Leetcode 206 题反转链表。链表类的题目要求候选人十分细心,因为很容易就出现空指针或者环等。题目:反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?迭代解法解法思路详解:拿到题目首先我想的是用迭代解法来解题,递归解法还是有点难度的,不容易想到。迭代解法简单来说就是得初始化当前节点 c

2021-04-04 17:09:44 127

原创 MySQL 幻读和不可重复读的区别

背景最近在学习 MySQL 的事务,幻读和不可重复读很容易搞混。故做此记录总结。先给出两者的定义。不可重复读如果一个事务修改了另一个未提交事务读取的数据,就意味着发生了不可重复读现象。r1[x]…w2[x]…((c1 or a1) and (c2 or a2) in any order)解释下:r1[x] 表示事务 T1 读字段 x 的值,然后 w2[x] 表示事务 T2 修改了 x 的值幻读如果一个事务先根据某些搜索条件查询出一些记录,在该事物未提交的时候,另一个事务写入了一些符合那些搜索

2021-03-28 21:04:19 259

原创 Mac 下 VsCode 调试 C 程序

首先将文件夹加入 workspace, 然后在 .vscode 下添加两个文件。task.json:{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [{ "label": "build", "command": "g

2020-10-26 22:23:26 1021

原创 Spring 使用 setter 方法实现依赖注入的三种方式

本文讨论最简单的 Spring setter 方法实现依赖注入的方法。我们主要讨论手动模式的 setter 方法实现依赖注入,主要有三种模式。xml 资源配置元信息Java 注解配置元信息API 配置元信息首先上代码结构图:我们定义 model 类 Employee,两个最简单属性:String name 和 Long id。Boss 类继承 Employee 类,并且添加属性 String title。两个类都加上 getter/ setter 方法和 toString() 方法。我

2020-05-18 22:29:21 1552

原创 Idea 本地项目与 gitlab 关联

网上文章很多,我直接参考的下面这篇:这篇我的想法是创建一个大的根目录,然后在根目录下创建很多个 project,这样我们就可以来实现一个仓库对应多个 Java 项目了。每次写代码时创建一个新的分支,然后提交代码。...

2020-05-18 21:54:35 1484

原创 Spring 自动注入 autowire 中 byName 和 byType 的区别

主要区别Autowire modesno默认不开启byName根据被注入属性的名称作为 Bean 名称作为依赖查找,并将对象设置到该属性byType根据被注入属性的类型作为依赖类型进行依赖查找,并将该对象设置到该属性constructor特殊 byType 类型,用于构造器参数我直接上例子让大家有一个直观的认识。我们首先构造一个 modelpub...

2020-05-18 16:37:56 1628

原创 自动注入 autowire 中 byName 和 byType 的区别

我直接上例子让大家有一个直观的认识。我们首先构造一个 modelpublic class Company { // 特意把属性的名字做了改变。 private Employee emp; public void setEmp(Employee emp) { this.emp = emp; } @Override public String toString() { return "Company{" +

2020-05-18 10:24:45 1415

原创 java.io.FileNotFoundException: class path resource cannot be opened because it does not exist

最近在做一个简单的 Spring 入门例子时报了标题这样一个错误,原因是找不到我的 但是我十分确认我的 dependency-injection-context.xml 的位置是正确的,因为我可以使用 IDEA 导航到。项目结构图:原因后来发现我在 maven 的 pom.xml 文件中加了一个<packaging>pom</packaging>这就表明这个项目是一个 父(聚合)工程,我们要将其变成单独的项目,所以我们删去 pom 这一行,maven 的打包方式默认为

2020-05-17 08:23:30 1779

原创 机械设计二级减速器设计

机械设计课程设计减速器设计全套图纸以及六十页的说明书

2020-05-16 10:43:47 1657 1

原创 CA6140车床法兰盘零件机械加工工艺规程及钻3-11 孔工序专用夹具设计

内容摘要:机械制造技术基础课程设计设计题目:法兰盘零件的机械加工工艺规程及夹具设计设 计 者: XXX机械制造技术基础课程设计任务书1、零件图 1张2、毛坯图 1张3、机械加工过程卡 1张机械加工工序卡 10张4、夹具结构设计装配图 1张5、夹具结构设计零件图 1张6、课程设计说明书 1份...

2020-05-16 09:44:52 1470

原创 Java 使用一行代码找到数组的最大值

public static void main(String[] args) { int[] dp = {2,3,1}; // Arrays.stream(dp).max().getAsInt() System.out.println(Arrays.stream(dp).max().getAsInt()); }我们使用流的操作,来实现,底...

2020-04-15 17:11:28 493

原创 redis 中 bitfield 的使用

bitfield 有三个子指令,分别是 get/set/incrby,它们都可以对指定位片段进行读写,但是最多只能处理 64 个连续的位,如果超过 64 位,就得使用多个子指令,bitfield 可以一次执行多个子指令。所以我们可以这样操作:127.0.0.1:6379> set w heOK127.0.0.1:6379> bitfield w get u4 0 # 从第一个位...

2020-04-07 12:18:16 1743 4

原创 Mysql 中字符串用单引号还是双引号?

答案是都可以。但是 mysql 里面有个 sql mode 叫做:ANSI_QUOTES 。这个 ANSI_QUOTES 开启后会把 双引号当作 ``。所以我们还是建议使用单引号来引用字符串。mysql 官方文档原文解释:ANSI_QUOTESTreat " as an identifier quote character (like the quote character) and n...

2020-04-06 22:45:13 7374

原创 配置阿里云镜像-- Maven 下载快步如飞

直接上我的 settings.xml 文件吧。亲测有效。<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2020-04-06 14:55:56 150

原创 Maven 工程修改 jdk 版本为 1.8

因为 Maven 工程默认为 1.5 版本,如果我们想使用 jdk 1.8 才有的特性,比如:Lambda 表达式,接口的默认实现方法,我们要将版本改为 1.8。具体的实现方法是在 pom.xml 文件中加上这一段代码。 <build> <plugins> <plugin> <gr...

2020-01-25 12:57:50 779

原创 IDEA 快捷键使用

Ctrl + alt + 箭头 →⬅ 跳回上次浏览代码位置处,查看源码时使用。Ctrl + F12 可以查看一个类的所有方法Typora 使用 markdown 时连按两次回车可以退出当前编辑模式。Ctrl + N 查找所有的 class 文件Ctrl + Shift + N 查找所有一直更新中…...

2020-01-17 14:44:15 95

原创 单例模式怎么实现?这篇文章给你讲透

大家可能经常在面试中被问到单例模式的相关问题,如果面试官考察你对单例模式的理解程度,那么大概率会被要求手写单例模式。单例模式看起来简单,但往深了挖,又能考察到面试者对于并发、序列化、类加载等基础知识的掌握程度。而且单例模式有很多种写法,大家可能想知道那种写法更好,我也总结了几种写法,一并呈现给大家。首先我们需要知道什么是单例模式?单例模式指的是保证一个类只有一个实例,并且提供一个全局可以访问的入...

2020-01-16 16:09:34 273

原创 ArrayList 和 LinkedList 的区别(面试常考)

最近秋招面试时经常碰到这道题,虽然自己也答出来了,但总感觉不是那么完善,特此总结一下。ArrayList 和 LinkedList 都实现了 List 接口。public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable...

2019-09-22 09:51:40 1315

原创 栈一定得用数组实现吗?

本文来自真实面试题:能说一下栈的特性吗?栈一定得用数组才能实现吗?答案:不一定,栈既可以用数组实现,也可以用链表实现。下面贴上代码:/** * 实现一个栈,用数组。 * 也可以用链表 */public class ArrayStack { private String[] items; // 栈 private int count; // 目前栈中...

2019-07-12 21:02:34 637

原创 Java 中的移位指令 >>> 和 >>

今天楼主看源码时看到了 Java 中的移位指令,很是困惑,于是去查阅了下资料,终于搞懂了,特此记录如下。说明:>>> 运算符会用 0 填充高位,>> 会用符号位填充高位。这条准则在移位正数时我们看不出他的影响,但是我们来看看负数。我举个例子, -2 >> 1 和 -2 >>> 1。System.out.println(-2 >...

2019-04-13 15:41:00 269

原创 进程和线程的区别

进程在进程模型中,所有的可运行的软件,包括操作系统,被组织成若干顺序进程,简称进程。一个进程就是一个程序的实例,它包括程序计算器、寄存器和变量的当前值。线程每个进程都有一个地址空间和一个控制线程。进程用于把资源集中在一起,而线程则是在 CPU 上被调度执行的实体。多进程共享物理内存、磁盘、打印机和其他资源,多线程共享同一个地址空间和其他资源。由于线程具有进程的一些性质,所以...

2019-03-24 16:44:43 82

原创 链表-面试高频考点解析

链表是一种基本数据结构,因为链表使用过程中指来指去的指针让大家抓狂,以至于大家面试前总是要特意看下链表相关知识。今天,我来带大家学习「链表」(Linked list) 这个数据结构。我们总是拿链表和数组来进行比较,不同于数组需要连续内存,链表并不需要一块连续的内存,它通过「指针」将一组零散的内存块串联起来使用。了解了链表的官方定义后,我们来看看链表有那些结构。链表包括单链表、循...

2019-02-19 22:19:54 159

原创 static 静态域和静态方法

1. 静态域如果将域定义为 static,每个类中只有一个这样的域。而每一个对象对于所有的实例域都有自己的一份拷贝。直接看代码吧。class Employee { private static int NextId = 1; private int id;}这里给 Employee 类添加了一个实例域 id 和一个静态域 NextId。现在每一个雇员对象都...

2019-02-15 12:42:59 353

原创 数组的那些事儿

数组在任何一种编程语言中,都是一种基础的数据结构。大家提到数组,都不会感到陌生,甚至会拍拍胸脯自信地说:这很简单啊。大家有没有想过:数组为什么从 0 开始编号呢,为什么不从 1 开始呢?希望你带着这个疑问去看接下去的文章。文中会涉及到时间复杂度的分析,不懂的朋友可以先看看这篇。复杂度分析什么是数组?数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组...

2019-02-10 22:11:36 226

原创 复杂度分析-算法学习的精髓

我们知道学习数据结构与算法主要是解决一个「快」和「省」的问题,如何让代码执行更快、如何更节省空间。那么如何来考量你的代码的执行效率呢,我们总要有一个标准,这就是我今天所讲的复杂度分析,不夸张的说,掌握好复杂度分析,数据结构与算法你就掌握了一半,所有的算法都逃不出复杂度分析的范畴。复杂度分析包括时间复杂度和空间复杂度。如何考量我们代码的执行效率,有的人可能会说我在计算机上跑一下不得了,简单便捷,...

2019-02-03 23:11:40 110

原创 我的青年时代

今年我二十岁,古人云二十弱冠之年,这是我生命中的黄金时代,我有很多奢望。这些奢望非常现实,我想爱,想吃,羡慕自由职业,却也想进入大公司工作,我一身毛病,也在积极改变自己,我努力学习技能,在寒假的日子里也不想放松自己。某一天我不学习、不阅读我会深深地自责,可是我坐到书桌前,我也会胡思乱想,不能坚持学习。这些都是我生活中真真切切的感受。王小波在书中写生活是个缓慢受锤的过程,人一天天老...

2019-01-30 20:59:50 294

原创 多维数组怎么学?看这一篇就够了,带你在游戏中学习。

tic-tac-toe 游戏 (井字棋游戏)大家小时候应该都玩过井字棋吧,下课之余和同学来上一把,是多么开心。今天 Aaron 就带你来学会用程序来判断井字棋胜利的一方。读入一个 3X3 的矩阵,矩阵中的数字为 1 表示该位置上有一个 X,为 0 表示 O程序判断这个矩阵中是否有获胜的一方,输出表示获胜一方的字符 X大家可以直接看程序,我作了详细的注释。// 二维数组Scanne...

2019-01-22 09:32:28 290

原创 Java中判断素数的五种方法

Java 中判断素数我们有很多方法,每种方法时间复杂度也不一样。今天我汇总了一下,分享给大家。既可以输出前 50 或 n 个素数,也可以判断 100 (或 n) 以内的素数。1. 从 2 到 x-1 测试是否可以整除Scanner in = new Scanner(System.in);int x = in.nextInt();boolean isPrime = true;if ( x...

2019-01-21 17:04:41 67423 20

原创 数据分析之 pandas

上一次我分享了 Numpy 的学习心得,没看过的朋友点这里 numpy这次我们学习另一个非常重要的工具 Pandas,很多小伙伴可能已经听说过 pandas 了,pandas 是基于 numpy 构建的含有更高级数据结构和分析能力的工具包,功能更强大,我们趁热打铁,在学完上面的 Numpy 后把 pandas 学到手。pandas 有两种数据结构:Series 和 DataFrmeSerie...

2018-12-27 19:15:21 166 4

原创 数据分析之 Numpy 学习(看这篇就够了)

大家知道数据分析中 Python 用到的最多的第三方库便是 Numpy 了,它有着无可比拟的优势,它提供的数据结构比 Python 的更高级、更高效,可以说 Numpy 是 python 数据分析的基础。在标准的 Python 中,有个列表 list,我们知道 list 相当于一个数组的结构,但是由于列表中 list 保存的是对象的指针。在 python 编程中省去了指针的概念,但是数组有指针。...

2018-12-26 19:39:20 374

原创 每日一算法

1.红黄蓝球问题leetcode 75 号题给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,> 并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2...

2018-12-26 12:59:39 159

原创 数据分析怎么学?

当我们谈论数据分析时,我们在谈论什么?我们其实在谈论数据分析的三个部分。1. 数据采集 数据采集是我们的「原材料」,主要通过爬虫以及一些自动化工具采集得来。2. 数据挖掘 数据挖掘是数据分析中最有价值的部分,主要是要帮助我们找到数据的规律,帮助我们做出决策,完成业务诉求。3. 数据可视化 数据可视化可以帮助我们更直白地看到做出的结果,帮助我们理解或者向他人演示。数据...

2018-12-19 13:37:47 186

原创 直角引号怎么打?

在新媒体排版中,我们发现直角引号「」确实比弯引号“”好看很多,但是直角引号「」,『』,很难打开来,今天我就来教大家如何在 win 10 下快速打出直角引号「」。1、首先我们打开设置,点击选项。 2、找到微软拼音,点击选项3、点击词库和自学习。4、点击添加或编辑自定义短语5、添加即可...

2018-12-15 13:12:21 4337

原创 周五分享

各位小伙伴大家好啊!周五了,忙碌的一周结束了,我的一周分享如约而至。这一周双十二过去了,我也在 JD 上买了根内存条,装上后,电脑性能要起飞啊,一扫之前的颓势,我终于可以一边打开我谷歌浏览器的数十个标签页一边进行各种骚操作了。双十二当天腾讯举办了年会,Pony、Mark、Martin、Allen 都发了言,张小龙为了这次发言整理了满满两页的段子,圈了鹅厂一大票女员...

2018-12-14 21:35:29 132

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除