自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 【知识点】震惊!都0202年了,你还在用这种方法拼接字符串!

在业务代码中,我们经常需要用逗号拼接多个字符串,但是,我看到很多代码还在使用下面这种方式拼接,一点都不拉风【特朗普式嘲讽.jpg】。public static String dealWithStr(List<String> list){ StringBuffer buffer = new StringBuffer(); for(int i = 0 ; i < list...

2020-04-12 21:27:44 194

原创 【知识点】文件头部校验

【知识点】:上传文件时只校验大小和后缀是不够的;应该校验上传文件的头部信息;同一文件类型的头部信息是一样的。我们在开发的时候经常会有很多上传文件的操作,我们一般的做法是控制文件的大小和类型,而控制文件类型最常用的方式是前后端对上传文件的后缀进行判断。但这种做法防控不了那种修改后缀上传的文件。先看几种常见文件的头部信息,如果项目中有用到其他类型的话可以在网上搜索一下。文件类型头...

2020-03-14 07:46:58 2951 1

原创 谈一谈新技术的学习以及接下来的计划

前段时间,托公司和极客时间的福,领了一些VIP课程,为了不浪费这个机会,我也每天在平台学习,慢慢进步。学到今天,有一门课程对我影响很大,那就是阿里云云栖认证专家颜群分享的《如何快速且深入地学习一门新技术?》。感兴趣的童鞋可以去看看。下面是我看完后整理的思维导图,导图是用幕布生成的,想要源文件的童鞋可以从这里查看。作为互联网人,我们都知道技术更迭太快,怎么都学不完,...

2020-03-10 23:59:31 562

原创 真香的try-with-Resources

本文在我的个人博客同步更新java 7 之前的关流写法我们在项目中处理文件时,总会有很多的io流需要关闭,而关闭流的代码写起来比较繁琐,比如下面这种写法 /** * 打印文件内容到控制台 * @param filePath */ public static void commonTryCatch(String filePath){ FileInputStream ...

2020-01-15 22:01:02 253

原创 java项目没有main函数也能输出“HelloWorld”?

本文在我的个人博客同步更新入了java坑的小伙伴都知道,Java项目需要main函数才能运行,main函数是java程序的入口。下面这段代码大家已经熟到不能再熟了,可以说闭着眼睛都能敲出来…public class HelloWorld{ public static void main(String[] args){ System.out.println("Hello,World!...

2020-01-14 00:27:43 1868

原创 Java爬取喜马拉雅非付费音频【优化】

本文在我的个人博客同步更新前言年初,我写了Java爬取喜马拉雅非付费音频这篇文章;后来代码一直没有维护过。前段时间,有个哥们下载了我的代码,发现运行失败,我觉得有点儿对不住这个哥们。但因为前段时间太忙,没顾得上,因此今天抽空重新研究了下。具体回顾具体前期研究过程,我就不多说了,大家可以前往Java爬取喜马拉雅非付费音频查看。总的来说,这篇文章和程序的目的是使用java批...

2019-12-29 21:00:36 814

原创 java8 stream的分组功能

本文在我的个人博客同步更新最近,项目开发时遇到一个问题。根据业务要求,前端给后端上送的参数是一个列表(如List list),因此,后端也用了一个列表来接收。然而,等后端拿到数据后,我发现我需要对相同classId的数据进行统一处理。于是,我找到前端妹妹讨论,看她能不能帮忙把相同classId的数据封装成列表传给我。我好将接收参数修改成以下格式(List list):class Dto{...

2019-12-29 00:23:13 2274

原创 经典排序之插入排序

本文在我的个人博客同步更新终于讲到插入排序了,哈哈哈,这个我特别熟悉,大家看张图就明白了!!!这个我熟啊!斗地主、炸金花、K 5 10、378Q469J、五张牌、跑得快、老鼠搬家......讲到玩牌我就停不下来,可以玩的花样实在是太多了!那么插入排序和扑克牌有什么关系呢?其实我们平时抓牌的方式就是插入排序,每抓一张牌就需要将新的牌插入到原先的牌中...

2019-07-02 00:24:21 438

原创 经典排序之选择排序

本文在我的个人博客同步更新选择排序是最好理解的一个排序算法,它非常的直观,如果是从小到大排序的话,就是将第一个元素作为基点,依次与后面所有元素比较,如果比后面的元素大就交换位置,这样循环一轮之后,第一个元素就成了最小的元素。这种排序方法其实就是填坑,第一个坑填最小(最大)的元素,第二个坑填第二小(第二大)的元素,因此选择排序用代码实现起来相当简单。选择排序和冒泡排序的差别...

2019-07-01 00:04:18 102

原创 经典排序之冒泡排序

本文在我的个人博客同步更新冒泡排序是非常经典的一款排序算法,原理非常简单,所以很多高校的老师用冒泡排序为学生讲解算法入门概念。冒泡排序的原理为:以第一个元素为基准,依次比较相邻两个元素的大小,如果第一个比第二个大,交换两个元素的位置。 一轮比较完后,最后一个元素会是最大的那个数,就像水中的泡泡一路过关斩将冒了上去。 重新从第一个元素开始比较,直到...

2019-06-30 00:00:06 144

原创 LeetCode刷题之最小差值 I

本文在我的个人博客同步更新难度:简单链接:https://leetcode-cn.com/problems/smallest-range-i来看题:这道题就是我在朋友圈里吐槽“审题半小时,做题两分钟”的那道。可能是很久没做算法题了,反应有点迟钝,看了半天才看懂这道题的意思。以示例3为例,我们把题干抄一遍:给定了一个整数数组A = [1,3,6],对于A中的每一个元素...

2019-06-28 08:27:19 730

原创 LeetCode刷题之大的国家

本文在我的个人博客同步更新俗话说,柿子要挑软的捏,在各种算法题面前,我们难免会因为题目太难而失去信心,暴躁不已。我在刷题过程中看到了一道极其简单的题目,题友表示这道题拯救了他的自信,支撑着他继续刷下去。我们先看看这道题,以后题目做不出来时来这里找找安慰。我们来看看题目难度:简单题目链接:https://leetcode-cn.com/problems/big-countries...

2019-06-27 08:18:40 118

原创 LeetCode刷题之有趣的电影

LeetCode刷题之有趣的电影从上图可以看出来,整个题库分成三类,算法、数据库和shell,它们题目比例为1027/47/4。三种分类中,shell我不是很熟,算法的题太多,所以我先看了数据库的题。粗略地看了下,数据库的题还是相对简单的,可以跟着题目复习下SQL知识点,也可以跟着题友一起学习新的方法和不一样的分析角度。来看题难度:简单题目链接:https://leetcode-cn...

2019-06-26 07:29:12 343

原创 LeetCode刷题原因及刷题目录

最近,我一直在整理自己的技术栈,工作几年我写了大量的业务代码,觉得很有必要建立自己的知识体系。不仅如此,我越来越感觉到算法对一个程序员的重要性。很早之前,我的大学老师就和我们说过:编程=算法+数据结构。而我们工作后,慢慢进入了一个舒适圈:编程=框架+API。这样是不行的,算法和数据结构始终是编程最重要的部分,掌握了算法和数据结构,我们对很多框架和API的运用会更快,理解会更深,寻找bug和解决bu...

2019-06-21 22:26:49 769 2

原创 使用eclipse定义自己的内容辅助键提示模板(此功能可辅助撩妹)

1.Window->Preferences->Java->Editor->Templates2.点击新建,输入相关的词,点击OK保存,然后应用3. 输入前几个提示词后按内容辅助键alt+/,便可以出现后面的提示词这个技能还是和土味情话可以一拼的(逃~...

2019-03-28 04:01:17 200 1

原创 EditPlus设置java模板和自动完成风格

EditPlus设置java模板和自动完成风格使用EditPlus也可以设置java模板和自动完成风格。1 设置java模板在新建一个java文件时可以通过文件-&gt;新建文件-&gt;java来快速开始一个程序。而默认的模板风格是C/C++编程风格,我们可以通过修改它的模板文件来自定义自己的模板。工具-&gt;首选项-&gt;模板-&gt;java-&gt;打开打开之后可以看...

2019-03-12 20:59:19 1098

原创 EditPlus设置java、javac快捷键

在java学习之初,因为新手需要了解很多底层实现的细节,所以不建议一开始学就使用eclipse之类的IDE,而是建议使用Editplus之类的有高亮显示的记事本软件,而每次在命令行窗口执行编译、运行命令太过麻烦,因此给Editplus配置快捷键是很有必要的。1.打开EditPlus,选择工具-&gt;配置用户工具。2.在弹出来的窗口中选择用户工具-&gt;添加工具-&gt;应用程...

2019-03-08 23:42:19 551 1

原创 win组合键帮你酷炫地提高生产效率

win组合键帮你酷炫地提高生产效率在键盘上有一个Windows徽标键,按一下便能弹出开始菜单,其实win组合键也非常实用。1.win+D:快速回到桌面这个对我来说特别实用,每次写代码都会开很多的窗口,而win+D可以让我快速回到桌面。这种组合键也叫“老板键”,顾名思义,就是指我们在玩些小动作时,老板突然来了,这时候这个组合键就发挥作用了!2.win+R:执行“运行”命令...

2019-03-08 19:33:26 190

原创 Windows键盘上的截屏按键PrtSc

1.在键盘最下面那行有个PrtSc按键,这个按键便是截屏按键,是Print Screen的缩写。2.在需要截屏的时候按下PrtSc按键。3.按下PrtSc键之后,当前图像就自动保存到了剪贴板中,在需要的地方直接粘贴就行了。虽然这种截图方式不是那么方便,但有时救救急还是可以的。...

2019-03-08 00:32:47 20329

原创 修改eclipse工作空间的字体大小

每次一建立新的工作空间,我要做的第一件事情就是修改这个eclipse工作空间的字体大小。01 选择菜单Window-&gt;Preferences02 在左侧的搜索框中搜索font关键词,找到Colors and Fonts菜单项,然后在右侧的选择栏中选择Basic-&gt;Text Font,最后点击Edit编辑按钮03 字号为14,字行为细体的微软雅黑字体是我平时用的最多的...

2019-03-07 22:13:56 1207

原创 eclipse如何汉化--安装各国语言包

eclipse如何汉化–安装各国语言包本专题首发于简书-码农先生虽然我强烈推荐程序员使用Eclipse的英文版(当然,到了现在这个节点,我更喜欢IDEA),但仔细想想,好好了解下Eclipse的语言包插件也是个不错的选择。因此我花了点时间写了这篇文章。01 官网下载首先,进入官网语言包下载页面官网:https://www.eclipse.org/babel/downloads....

2019-03-05 22:49:14 564

原创 对象数组如何排序-Comparable接口详解

1 普通数组使用Arrays.sort方法排序本专题首发于简书-码农先生在Arrays工具类中,sort函数可以对普通数组进行排序,如以下代码所示: int[] hello = {18888,8888,5888,13888}; Arrays.sort(hello); System.out.println(Arrays.toString(hello));//[5888, 8888...

2019-03-02 15:49:37 653

原创 java基础-Object类中常用的几个方法

java语言是一门面向对象的语言,它的核心思想便是:万物皆对象。而Object作为所有类的基类,定义了一些共性的方法。因为目前市面上使用最多的版本是JDK 8.0 ,故本文使用的源码和API都是java 8.0的。01 toStringpublic String toString()返回该对象的字符串表示。 返回一个用于描述该对象的字符串。源码: public String...

2019-03-01 22:28:02 388

原创 java基础-String类API

在java基本API中,String类出现的频率极高,很多大公司的算法题都是基于字符串的,所以今天对java中的String类做一个总结。public final class Stringextends Objectimplements Serializable, Comparable&amp;lt;String&amp;gt;, CharSequenceThe&amp;nbsp;String&amp;nbsp;c...

2019-03-01 22:18:31 395

原创 win10 eclipse ctrl+alt+上下键快捷键导致屏幕颠倒

桌面右键-&gt;图形选项-&gt;快捷键-&gt;禁用 即可

2019-03-01 21:45:54 560

原创 Error:(1, 1) java: 非法字符: '\ufeff'

今天拷贝了两个算法工具类进项目,在重启项目时报以下错误:Error:(1, 1) java: 非法字符: '\ufeff'网上查了相关资料后了解到这是因为这个文件的格式为UTF-8-BOM编码,而程序编译时是按照UTF-8的格式来编译运行的,因此报错。所谓BOM,即Byte Order Mark,就是字节序标记。它是用来判断文本文件是哪一种Unicode编码的标记,其本身是一个Un...

2019-02-26 19:54:11 9261

原创 编程-java基础目录

编程-java基础目录作为一个java coder,无论学习了多少框架,Java SE始终是基础,是内功,需要深入了解。尽管我学习java已经4年了,也学习了很多SE的高级功能,也看过源码,但因为平时缺少总结,对JavaSE的全貌还是有点模糊,因此,开了此专题,每天整理一点Java知识点,最终形成一个统一的知识结构。Java SE 导航图上图是Java SE 平台指导图。...

2019-01-19 20:39:36 171

原创 JS下载喜马拉雅非付费音频

JS下载喜马拉雅非付费音频目录JS下载喜马拉雅非付费音频1 Demo“成品”及GitHub地址2 数据分析3 JS下载文件流4 搜索列表,下载音频5 总结昨天分析了喜马拉雅音频的接口方法,使用java实现了整个专辑的单线程下载,最后说好的可以用ajax的方法来试一下,所以今天一下班便花了点时间做了个简单的demo。1 Demo“成品”及GitHub地址首先先...

2019-01-07 21:46:46 966

原创 Java爬取喜马拉雅非付费音频

Java爬取喜马拉雅非付费音频目录Java爬取喜马拉雅非付费音频前言1 打开喜马拉雅网站并搜索一个节目2 研究其数据来源,获取分页数据3 获取列表信息4 获取音频下载地址5 核心代码6 基本使用前言因为很喜欢喜马拉雅FM上的音频节目,之前也找过一些喜马拉雅音频下载器。可能是因为网站调整,有些下载器慢慢出现了问题,估计是有些地址解析不了了,于是就想着研究一...

2019-01-06 20:54:22 26897 5

原创 删除GitHub的repositories,对应日期的贡献也会被删除

如题,今天本来想调整一下GitHub的资源库,于是把要调整的那个库删掉了,毕竟本地还在是不是?可是,我没想到相对应日期的贡献也被删掉了,早知道我就只是调整文件结构喽~呜呜呜,本来想着2019先立一个flag,保持每天提交代码,让绿色充满每一个小格子。可是!今天才1月4号!1号和2号的贡献就被我删掉了!!!我还想知道我能坚持多少天呢!算了,flag不能倒,接着坚持吧,虽然强迫症患者表...

2019-01-04 23:04:47 1025

空空如也

空空如也

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

TA关注的人

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