- 博客(16)
- 收藏
- 关注
原创 CountDownLatch
关于CountDownLatch,我从以下几方面进行讲解:1、百度说明同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。即,一组线程等待某一事件发生,事件没有发生前,所有线程将阻塞等待;而事件发生后,所有线程将开始执行;闭锁最初处于封闭状态,当事件发生后闭锁将被打开,一旦打开,闭锁将永远处于打开状态。2、个人理解执行一件事情,需要等几件事情全部执行完之后才能执行这件事情。比如:要想执行A功能,需要等B、C、D全部执行完之后,再去执行A功能。3、代码示例public
2021-01-25 23:01:30
586
原创 如何创建一个线程
创建线程有以下几种方式!1、继承Thread创建public class CreateThreadTest { public static void main(String[] args) { Thread threadExtends = new ThreadExtends(); threadExtends.start(); // 注意,这里一定要使用start方法,它是启动线程的方法! }}class ThreadExtends extends T
2021-01-24 21:20:00
5866
原创 信号量(Semaphore)
我们从以下几点学习信号量1、信号量的作用,信号量是用来做什么的?它维护了一个许可集,我们在初始化时需要传一个许可集数量,该数量值代表同一时间能访问共享资源的线程数量。线程可以通过acquire()方法得到一个许可,然后对共享资源进行操作,如果许可集已经用完了,哪线程在这里等待,直到其他线程释放,它才有机会再次获得许可。线程释放通过release完成,“许可才能归还给semaphore”简单的理解为我这里有10个车位,每次过来最多有10辆车可以同时停车,当走了一辆车以后,我们才能停新的车辆!2、例
2021-01-18 23:33:41
728
2
原创 mac使用brew安装mysql
mac使用brew安装mysql首先使用brew install mysql@5.7配置环境变量启动mysql设置密码首先使用brew install mysql@5.7如果想查看版本,直接使用brew search mysql.配置环境变量现在都安装了zsh,在vim ~/.zshrc配置环境变量。一般使用brew安装的文件都在:/usr/local/Cellar/下。我的mysql...
2019-11-24 19:08:39
2515
原创 如使用两个线程交替打印A-Z
如使用两个线程交替打印A-Z使用锁不适用锁使用锁static char print = 'a';public static void main(String[] args) { new Thread(() ->{ synchronized (args) { // 锁的名称 while (print <= 'z') { ...
2019-10-06 19:21:24
559
原创 java io 常规操作
谈起java 读写操作,不得不说的是io操作。io操作,我们必须了解的是两点:1、面向流(指的是操作如流水一样,不能颠倒,像队操作那样)2、组赛IO(读和写不能同时进行)里面详细内容在这不做详细解释,因为这些东西特别多,要想认真学习,得学习相应书籍。一般常用的操作如下: // 以下操作主要是写操作 File file = new File("D:\\txt\\test.txt");...
2019-05-20 21:44:10
195
原创 java提取字符串中数字
Pattern pattern = Pattern.compile("[需要匹配的数字(正则表达式)]"); Matcher matcher = pattern.matcher(n); while (matcher.find()) { System.out.println(matcher.group()); }现在我们获取字符串中的金钱,如下:pub...
2019-05-12 18:07:50
16101
1
原创 java如何生成随机数
java生成随机数有两种方法:1、使用Math方法,Math.random()随机生成一个double类型[0,1),如果想生成1~100的随机数:如:int num = (int)(Math.random()*100);2、使用Random方法, Random random = new Random();(中间可以传值,传值后生成的是固定的了,详细的请关注下面星球,有写)。如:rando...
2019-04-28 21:14:17
108223
6
原创 win10 如何安装java并配置环境变量
安装java,这里的操作系统是10,java版本是81、去java官网找资源,或者直接搜java下载(https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)2、选择你要下载的版本(下载时特别烦的一点是,需要登陆oracle账号,用邮箱就可以注册,特别快,1.8版本之前都不好找了)...
2019-04-27 18:47:26
804
原创 http常见的状态码
1、200~299最常见的是200,客户端请求成功2、300~3991)、302,重定向跳转,跳转地址通过location指定2)、303,该状态码表示由于请求对应得资源存在着另一个URI,重定向失败3、400~4991)、400,客户端请求有语法错误,不能被服务器识别,请改正前端错误2)、403,服务器收到请求,但拒绝提供服务3)、404,请求资源不存在,没有这个请求4)、40...
2019-04-27 17:54:25
361
翻译 idea搭建ssm框架
使用idea搭建ssm框架pom.xml文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://m...
2018-04-06 22:40:49
232
原创 MySql常用知识
MySql索引 想学习好数据库,对数据库的查询想掌握特别深的话,这是必须知道,也是必须学的。hash索引: 它的底层使用的是hash表(原理这里就不说了),主有Memory存储引擎显示支持Hash索引,它也是Memory表的默认索引类型,它页可以使用B+树索引。(过多就不详细说了,我也不太了解)B+树索引 B+树大家都知道吧(不知道的话,可以在网上搜搜,懂原理就行,实现起来困难非常大,小编
2017-12-17 20:05:57
217
1
原创 二叉平衡树
二叉平衡树说起这个树,我找了整整两天的时间,刚开始考虑的不周全,然后就一直该一直该,一直加一直加。 定义: 它是一颗空疏或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一颗平衡二叉树。 二叉查找树的定义: 1、若左子树不为空,那么左子树所有结点的值小于均小于他的根结点的值 2、若右子树不为空,那么右子树的所有结点的值大于根结点的值 3、左右子树也分别为二叉查找树(
2017-11-16 00:18:21
383
原创 二叉查找树
二叉查找树有这几个规则1、若左子树不为空,那么左子树所有节点的值小于均小于他的根节点的值。2、若右子树不为空,那么右子树的所有节点的值大于根节点的值。3、左右子树也分别为二叉树排序树。4、没有键值相等的节点。注意:每个值都不能一样,如果有一样的,我们不需做考虑。添加挺简单的,看下面的代码。首先做准备// 主要用来保存节点private Node<T> r...
2017-11-13 22:54:12
579
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人