09 2021 档案
摘要:一、计算机->右键->属性。 二、高级系统设置。 三、选择环境变量。 四、【系统变量】为全局生效,在其下面添加JAVA_HOMR,执行bin文件夹的上一级,然后点击确定。 五、选择Path编辑。 六、在最前面添加代码如下,然后确定。 %JAVA_HOME%\bin; 七、将之前开着的所有窗口,全部确
阅读全文
摘要:一、自行下载jdk1.9安装包。 二、双击运行,下一步。 三、因为jdk中自带一个jre,所以公共的jre可以不用安装。安装的路径不推荐有空格和中文,可能造成乱码和转义等问题,可以安装到自己想安装的位置。 四、点击关闭。安装完成。 五、检验JDK是否安装成功。cmd中执行命令,执行刚安装jdk文件夹
阅读全文
摘要:一、创建线程类。 public class RunnableImpl implements Runnable{ @Override public void run() { System.out.println("1"); } } 二、主方法。 public static void main(Stri
阅读全文
摘要:一、模拟线程不安全场景。 public class MyRunnable implements Runnable { private int a = 100; //共享的数据 @Override public void run() { while (true) { if (a > 0) { //多个
阅读全文
摘要:Thread类实现多线程。 一、创建多线程实现类。 public class MyThread extends Thread { //继承Thread类 public MyThread() { } public MyThread(String name) { //通过构造函数设置线程名称 super
阅读全文
摘要:可变参数 一、JDK1.5之后出现的新特性。 二、使用场景:方法的参数列表中,数据类型确定,但参数个数不确定时,使用可变参数。 三、底层实现:就是转换为了一个数组。 注意事项: 1、一个方法的参数列表只能有一个可变参数。 2、如果方法的参数有多个,那么可变参数必须写在参数列表的末尾。 简单使用 pu
阅读全文
摘要:HashSet 一、存储元素是无序的。注:无序指的是不按添加的顺序存储。 二、HashSet集合的数据结构是:哈希表 1、JDK1.8之前是:哈希表 = 数组 + 链表 2、JDK1.8之后是:哈希表 = 数组 + 链表 如果元素有哈希(值)冲突,导致根据哈希值分组之后的元素超过8个。链表就会变成红
阅读全文
摘要:一、栈:先进后出 二、队列:先进先出 三、数组:查询快、增删慢。 1、查询快:数组在内存中是连续存放的,可以通过索引下标迅速定位元素。 2、增删慢:数组的长度是固定的,增删数组都会创建新的数组。 四、链表:查询慢、增删快。 1、单向链表(无序) 2、双向链表(有序) 五、红黑树:查询速度非常快。很类
阅读全文
摘要:Iterator Collection<String> coll = new ArrayList<>(); coll.add("a"); coll.add("b"); Iterator<String> it = coll.iterator();//指针指向集合的-1索引 while (it.hasN
阅读全文