
Java学习
文章平均质量分 81
拧螺丝专业户
这个作者很懒,什么都没留下…
展开
-
Springboot启动过程分析
SpringBoot的版本是v3.0.2,下面进行详细的分析。原创 2023-02-20 09:21:57 · 650 阅读 · 0 评论 -
Java线程池的shutdownnow()方法为什么不能停止运行的任务?
Java线程池的shutdownnow()方法为什么不能停止运行的任务?在工作中到了一个实际问题,明明已经调用了线程池的shutdownnow()方法,但是线程池中任务依然在继续运行。加下来先大概介绍一下问题背景,然后给出原因分析,最后给出这个问题的解决办法。一、问题背景事情是这样的,在一个线程池中运行着一个周期任务task,这个task的run方法中会执行四个子任务,每个子任务中都会有网络操作。 下面简单用代码进行展示一下。public class Task implements R原创 2020-10-19 08:14:34 · 5107 阅读 · 2 评论 -
log4j2 学习(一) 概述
一、功能在大型应用中,日志可以帮助定位问题和分析性能,日志组件几乎是大型应用的必备组件。log4j2是log4j的升级版本。log4j2可以完成日志输出。可以定制日志输出格式,指定日志输出的目的是文件、控制台、数据库或其他存储媒介。用log4j输出日志相比较于使用“System.out”的最大优势在于可以指定日志输出级别。二、特点与优势API独立log4j API是一个门面(faca...原创 2019-10-23 21:36:43 · 277 阅读 · 0 评论 -
JUnit4 学习笔记(一) 安装与示例
JUnit4 学习笔记(一) 安装与示例下载与安装(1) 直接使用jar下载下面这两个jar,然后添加到测试路径中:[junit.jar](https://search.maven.org/search?q=g:junit AND a:junit)hamcrest-core.jar(2) 使用Maven的方式<dependency> <groupId...原创 2019-08-18 22:01:57 · 1060 阅读 · 0 评论 -
IntelliJ Idea 快捷键(表格展示)
IntelliJ Idea 快捷键(表格展示)1. 自动代码常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等样板代码 。例如要输入for(User user : users)只需输入user.for+Tab再比如,要输入Date birthday = user.getBirthday(),只需输入user.getBirthday().var+T...原创 2019-01-16 15:05:46 · 4025 阅读 · 0 评论 -
八人过河问题详解(Java语言求解)
八人过河问题详解(Java语言求解)在秋招面试搜狗大数据开发岗位的时候,面试官给出了一个八个人过河的问题,后来自己查了之后发现这个是经典过河问题的一个变型。网上也有其他求解这个问题的方法和代码。他们大多数是把所有的状态看作一个图数据,用矩阵表示,有的还需要提前把安全的状态判断出来,需要手动处理一些数据。我写的这个方法,不需要手动处理任何数据,直接就能运行出结果,最后为了更直观的展示,还会打印出...原创 2019-01-23 18:07:52 · 2459 阅读 · 0 评论 -
深入理解List的toArray()方法和toArray(T[] a)方法
深入理解List的toArray()方法和toArray(T[] a)方法这两个方法都是将列表List中的元素转导出为数组,不同的是,toArray()方法导出的是Object类型数组,而toArray[T[] a]方法导出的是指定类型的数组。下面是两个方法的申明及说明,摘自Java8的API文档。toArray()方法的分析Object[] toArray()Returns an ...原创 2019-01-07 15:14:53 · 105680 阅读 · 15 评论 -
开发中Eclipse常用快捷键
编辑时常用快捷键下面是一些开发中比较常用的快捷键。按键功能Alt + /内容提示:Ctrl + 1提示Ctrl + shift + O导包Ctrl + Shift + F格式化代码块Alt+上下键代码位置调换Ctrl+/添加/除去单行注释Ctrl+Shift+/添加多行注释Ctrl+Shift+\删除多行注释w...原创 2019-01-17 16:38:58 · 172 阅读 · 0 评论 -
编程的智慧
在简书上看见一篇非常好的写编程方法的文章,现在转载到这儿。编程的智慧编程是一种创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟,所以这里提出的“智慧”,并不是号称一天瘦十斤的减肥药,它并不能代替你自己的勤奋。然而由于软件行业喜欢标新立异,喜欢把简单的事情搞复杂,我希望这些文字能给迷惑中的人们指出一些正确的方向,让他们少走一些弯路,基本做到一分耕耘一分收获。反复推敲代码既然...转载 2019-01-10 14:52:31 · 408 阅读 · 0 评论 -
ubuntu16.04下安装Java8详细教程
环境: ubuntu 16.04 vmware虚拟机中首先在Oracle官网下载java8的linux-64安装包:jdk-8u181-linux-x64.tar.gz(1) 将安装包拷贝到/opt目录下 sudo cp jdk-8u181-linux-x64.tar.gz /opt(2) 在/opt目录下创建java目录,并且将所有权限更改为当前用户mucao@vm-01:/op...原创 2018-10-06 10:33:19 · 73456 阅读 · 9 评论 -
LeetCode第77题Combinations从143ms击败1.27%优化到3ms击败100%
这个题目不是太难,主要记录一下自己从183ms击败1.3%提交的代码优化到3ms击败100%提交的代码的这个过程。希望能从中可以获取优化代码的思路。77. Combinations Given two integers n and k, return all possible combinations of k numbers out of 1 … n. Example: inp...原创 2018-07-06 12:05:33 · 317 阅读 · 0 评论 -
Java集合TreeSet的学习与总结
TreeSet属于Set集合框架,可以保持元素的有序性。TreeSet是依赖TreeMap实现的,TreeMap内部(TreeMap分析)是采用红黑树实现的。这篇博客主要介绍一下TreeSet的一些重要操作。1. Ceiling(E e)和floor(E e)操作这个Ceiling()操作可以获取在TreeSet集合中比指定元素大于或等于的元素中的最小元素。相对应的floor()操...原创 2018-07-02 14:42:03 · 1439 阅读 · 0 评论 -
对于Java中Map的put方法进行分析
Java学习 深入理解HashMap存储元素的方式原创 2016-08-03 19:31:23 · 20253 阅读 · 0 评论