自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TreeSet的使用和底层实现

title: TreeSet的使用和底层实现date: 2020-08-31 20:48:20tags: [java基础,TreeSet]TreeSet底层实际是用TreeMap实现的,内部维持了一个简化版的TreeMap,通过key来存储Set的元素。TreeSet内部需要对存储的元素进行排序,因此,我们对应的类需要实现Cpmparable接口。这样,才能根据compareTo()方法比较对象之间的大小,才能进行内部排序。 package cn.yishan.collection;.

2020-09-01 17:02:59 172

原创 手工实现HashSet

title: 手工实现HashSetdate: 2020-08-31 20:29:53tags: [java基础,HashSet]手工实现HashSet package cn.yishan.mycollection; import java.util.HashMap; /** * 手工实现一个HashSet,更深刻的理解HashSet底层原理 * @author yishan */ public class SxtHashSet { .

2020-09-01 17:02:20 106

原创 TreeMap、Set接口、HashSet常用方法

title: TreeMap、Set接口、HashSet常用方法date: 2020-08-31 17:22:50tags: [java基础,TreeMap,HashSet]TreeMap的使用和底层实现TreeMap是红黑二叉树的典型实现。 package cn.yishan.collection; import java.util.Map; import java.util.TreeMap; /** * 测试TreeMap的使用 * @au.

2020-08-31 20:30:27 155

原创 手工实现HashMap

title: 手工实现HashMapdate: 2020-08-17 20:22:22tags: [java基础,HashMap]手工数显HashMap01_基本结构_put存储键值对 package cn.yishan.mycollection; /** * 自定义一个HashMap * @author yishan */ public class SxtHashMap01 { Node2[] table; //位桶数组。buc.

2020-08-31 17:18:19 125

原创 Vector向量、Map接口、HashMap常用方法

title: Vector向量、Map接口_HashMap常用方法date: 2020-08-16 21:41:03tags: [java基础,Vector向量,HashMap]Vector向量Vector底层是用数组实现的List,相关的方法都加了同步检查,因此“线程安全,效率低”。比如,indexOf方法就增加了synchronized同步标记。如何选用Arraylis、LinkedList、Vector?1.需要线程安全时,用Vector.2.不存在线程安全问题时,并且查找较多用A.

2020-08-17 20:18:49 533

原创 手工实现LinkedList

title: 手工实现LinkedListdate: 2020-08-16 12:20:03tags: [java基础,LinkedList]LinkedList特点和底层实现LinkedList底层是用双向链表实现的存储。特点:查询效率低,增删效率高,线程不安全。双向链表也叫双链表,是链表的一种,他的每个数据节点中都有两个指针,分别指向前一个节点和后一个节点。所以,从双向链表中的任意一盒节点开始,都可以很方便的找到所有节点。定义节点package cn.yishan.mycollecti.

2020-08-16 21:33:49 134

原创 手工实现ArrayList

title: 手工实现ArrayListdate: 2020-08-15 20:00:22tags: [java基础,ArrayList]手工实现ArrayList01_最简化的方式 package cn.yishan.mycollection; /** * 自定义实现一个ArrayList,体会底层原理 * @author yishan */ public class SxtArrayList01 { private Object.

2020-08-15 23:39:59 81

原创 容器

title: 容器date: 2020-08-15 18:01:28tags: [java基础,泛型,ArrayList]容器/集合的基本概念数组就是一种容器,可以在其中放置对象或基本类型数据数组的优势:是一个简单的线性序列,可以快速地访问数组元素,效率高。如果从效率和类型检查的角度讲,数组是最好的数组的劣势:不灵活。容量需要事先定义好,不能随着需求的变化而扩容。比如:我们在一个用户管理系统中,要吧今天注册的所有用户取出来,那么这样的用户有多少个?我们在写程序时时无法确定的。因此,在这里我们.

2020-08-15 19:57:21 80

原创 异常

title: 异常date: 2020-08-15 12:41:20tags: [java基础,异常]异常概念javas是采用面向对象的方式来处理异常的。处理过程:1.抛出异常:在执行一个方法时,如果发生异常,则这个方法生成代表该异常的一个对象,停止当前执行路径,并把异常对象提交给JRE2.捕获异常:JRE得到该异常后,寻找相应的代码来处理该异常。JRE在方法的调用栈中查找,从生成异常的方法开始回溯,知道找到相应的异常处理代码为止。ExceptionException是程序本身能够.

2020-08-15 17:59:51 116

原创 Math类、File类、枚举

title: Math类、File类、枚举date: 2020-08-14 11:49:16tags: [java基础]Math类package cn.yishan.test;/*** 测试Math的常用方法* @author yishan*/public class TestMath { public static void main(String[] args) { //取整相关操作 System.out.println(Math.ceil.

2020-08-15 12:39:01 133

原创 可视化日历

title: 可视化日历date: 2020-08-14 10:46:44tags: [java基础,实例程序]可视化日历程序键盘输入日期,显示当月的日历,并对当天进行标注package cn.yishan.test;import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.u.

2020-08-15 12:38:39 293

原创 包装类、String类源码分析、Date时间类

title: 包装类、String类源码分析、Date时间类date: 2020-08-12 15:03:12tags: [java基础]包装类测试包装类package cn.yishan.test;public class TestWrappedClass { public static void main(String[] args) { //基本数据类型转成包装类对象 Integer a = new Integer(3); .

2020-08-14 10:48:44 90

原创 内部类、String类常量池、常用方法等

title: 内部类、String类常量池、常用方法等date: 2020-08-10 20:00:36tags: [java基础]内部类成员内部类非静态内部类1.非静态内部类必须寄存在一个外部类对象里, 因此,如果有一个非静态内部类对象那么一定存在对应的外部类对象。非静态内部类对象单独属于外部类的某个对象。2.非静态内部类可以直接访问外部类的成员,但是外部类不能直接访问非静态内部类成员3.非静态内部类不能有静态方法、静态属性和静态初始化块4.外部类的静态方法、静态代码块不能访问非静.

2020-08-11 11:53:55 103

原创 语句块、方法、递归结构

title: 语句块、方法、递归结构date: 2020-07-30 12:14:20tags: java基础语句块块确定了局部变量的作用域,块中的程序代码,作为一个整体,是要被一起执行的。语句块可以使用外部的变量,而外部不能使用语句块中定义的变量,因为语句块中定义的变量作用域只限于语句块。方法方法就是一段用来完成特定功能的代码片段,类似于其它语言的函数方法的调用方式1.形式参数:在方法声明时用于接收外界传入的数据2.实参:调用方法时实际传给方法的数据3.返回值:方法在执.

2020-08-09 14:14:45 160

原创 面向对象(提高篇)

title: 面向对象(提高篇)date: 2020-08-03 14:50:53tags: java基础面向对象的三大特征:继承、封装、多态。继承继承使用要点:1.父类也称作超类、基类、派生类2.java中只有单继承,没有C++那样的多继承。多继承会引起混乱,使得继承链过于复杂,系统难于维护。3.java的接口可以多继承,类只有单继承。4.子类继承父类,可以得到父类的全部属性和方法(除了父类的构造方法),但不见得可以直接访问(比如 父类私有的属性和方法)5.如果定义一个类时,没有.

2020-08-09 14:12:49 127

原创 面向对象

title: 面向对象date: 2020-07-31 13:17:30tags: [java基础,jvm]面向对象和面向过程1.都是解决问题的思维方式,都是代码组织的方式2.解决简单问题可以使用面向过程3.解决复杂问题:宏观上使用面向对象把握,微观处理上仍然是面向过程内存分析java虚拟机的内存可以分为三个区域:栈stack、堆heap、方法区method area栈的特点1.栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等).

2020-08-09 14:12:24 77

原创 数组

title: 数组date: 2020-08-07 14:21:11tags: java基础数组的定义数组是相同类型数据的有序集合。数组变量属于引用类型,数组也可以看做是对象,数组中的每个元素相当于该对象的成员变量package cn.yishan.arrays;public class Test01 { public static void main(String[] args) { int[] arr01 = new int[10]; Stri.

2020-08-09 14:11:54 70

原创 this、static、静态

title: this、static、静态date: 2020-08-02 19:45:23tags: java基础对象创建的过程和this的本质创建一个对象分为如下四步:1.分配对象空间,并将对象成员变量初始化为0或空2.执行属性值的显式初始化3.执行构造方法4.返回对象的地址给相关的变量this的本质就是“创建好的对象的地址”,由于在构造方法调用前,对象已经创建。因此,在构造方法中也可以使用this代表“当前对象”。this最常用的用法:1.在程序中产生二义性之处,用使用.

2020-08-09 14:10:34 79

原创 JVM垃圾回收机制

title: JVM垃圾回收机制date: 2020-08-09 12:12:37tags: [jvm]JVM中年轻代里的对象什么情况下进入老年代?老年代垃圾回收算法-标记整理算法1.躲过15次GC之后进入老年代系统刚启动时,创建的各种各样的对象,都是分配在年轻代里。随着慢慢系统跑着跑着,年轻代满了,就会出发Minor GC ,可能1%的少量存活对像转移到空着的Survivor区中然后系统继续运行,继续在Eden区里分配对象……类似静态变量等引用的对象,可能存活时间会久一些,.

2020-08-09 14:09:20 97

原创 SVN

title: SVNdate: 2020-07-20 15:50:39tags: 版本控制1.SVN常见操作:a.发布项目(share project):项目组长将本机的项目第一次发布到中央仓库。b.下载项目(检出项目、check out):组员将中央仓库的项目第一次下载到本地。c.提交(commit):将本地修改的内容,同步到服务器中(本地–>服务器)。编写完某一个小功能、每天下班前提交d.更新(updata):将服务器中的最新代码同步到本地,(服务器–>本.

2020-08-09 14:08:27 150

原创 入门Spring-02

title: 入门Spring_02date: 2020-06-07 20:25:31tags:特殊值的注入问题value和注入方式的区别[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VxComir4-1593681149893)(https://s1.ax1x.com/2020/06/07/tRFRzj.png)]特殊值注入: 1.使用<![CDATA[ ]]>标记 2.使用XML预定义的实体引用给对象类型赋值null: .

2020-07-02 17:12:57 63

原创 入门Spring_01

title: 入门Spring!date: 2020-05-21 09:22:36tags:Spring IOC AopIOC:控制反转(DI:依赖注入),反转的是:获取对象的方式。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8XXaAnJJ-1593681118780)(https://s1.ax1x.com/2020/05/21/YbpZfH.png)]IOC(控制反转)也可以称之为DI(依赖注入)。控制反转:将 创造对象、属性值的方式进行了.

2020-07-02 17:11:51 70

原创 循环

title: 循环date: 2020-05-17 21:37:25tags:while循环:1. while结构和if很像2. 循环要注意更新变量,防止死循环(无限循环)3.循环的思路while(循环条件){ 循环操作 ;} 会:可以识别循环条件、循环操作-->套语法 不会:不用循环,多写几步,观察循环条件、循环操作例题:public class Test5 { public static void main(String[] args) .

2020-07-02 16:52:59 96

原创 选择与循环

title: 选择与循环date: 2020-05-06 13:01:05tags:选择结构if选择结构 if(布尔条件){ ... //如果条件为真 则执行 } if后如果只有一条语句,则{}可以省略(但不建议省略);如果多条语句,则{}不能省略if...else...选择结构 简单的if...else...可以等价为 三目运算符随机数 //输出[0,1)的随机小数 System.out.println(Math.r.

2020-07-02 16:52:23 106

原创 数据类型与变量

title: 数据类型与变量date: 2020-05-04 12:31:07tags:变量:变量存在于内存中(程序结束、计算机关机之后 变量失效)变量像宾馆宾馆:1. 申请房间类型(单人间、双人间、...)2. 入住3. 使用变量:1. 声明数据类型(整数、小数、字符串、...)2. 赋值3. 使用java数据类型:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dxDV83k9-1593679919559)(https://s1.ax1.

2020-07-02 16:51:46 77

原创 类型转换、算术运算符、逻辑运算符

title: 类型转换、算术运算符、逻辑运算符date: 2020-05-05 11:01:09tags:数据类型的转换1.自动转换 范围小的类型可以自动转换(赋值给)为范围大的类型 范围小的类型(遇到)范围大的类型,自动转为范围大的 整数<小数 “最大的是字符串”:任何类型遇到字符串都自动转换为字符串 例如: System.out.println(""+10+1); //101 System.out.println(1.

2020-07-02 16:51:15 190

原创 JAVA基础及环境变量的配置介绍

title: JAVA基础入门date: 2020-04-29 13:29:29tags:JAVA基础java是一门跨平台语言:一次编写,处处运行java能够跨平台的原因,是因为有各种类型的jvm,且各个jvm不跨平台写代码(java)-->编译(class,字节码,相当于二进制)-->执行classjvm:java虚拟机(java virtual machine)jre:jvm+核心类库(java runtime environment):只能运行JAVA程序,但不能开.

2020-07-02 16:50:36 58

原创 第一个JAVA程序

title: 第一个JAVA程序date: 2020-04-29 15:10:29tags:示例程序public class Test{ public static void main (String [args]){ System.out.pringtln("Hello World!"); }}class后面的称之为“类名”public class 后面必须和文件名保持一致一个文件可以多个类(class),但是只能有一个公共类(publi.

2020-07-02 16:50:01 71 1

原创 MarkDown基础语法

title: MarkDown基础语法date: 2020-04-28 13:01:50tags:Markdown在线工具:marxi.coVisual Studio Code有道云笔记Markdown语法六级标题语法:示例:标题标题标题标题标题标题引用语法:示例:尼古拉斯赵四说过,帅的人会一直帅。写一个列表语法:示例:无序列表无序列表无序列表再写一个列表语法:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(im.

2020-07-02 16:48:56 165

空空如也

空空如也

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

TA关注的人

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