随笔分类 -  Java基础

自己看视频记的笔记
摘要:TreeSet源码分析 基本介绍: TreeSet实现了Set接口 1.在使用无参构造器创建TreeSet对象时,依旧是无序的(写入和取出顺序) 2.可以使用treeset的一个构造器向其中传入比较器的方式来实现字符排序(匿名内部类),并制定排序规则 package collection.set.t 阅读全文
posted @ 2022-01-22 00:03 紫英626 阅读(53) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2022-01-21 15:33 紫英626 阅读(21) 评论(0) 推荐(0)
摘要:Properties分析 案例引入 传统方法: 这时如果我们要求只获取一个值就比较麻烦 基本介绍 Java 读写Properties配置文件 - 旭东的博客 - 博客园 (cnblogs.com) 1.可以看到Properties是Hashtable的子类所以也间接实现了Map接口 2.因为是Has 阅读全文
posted @ 2022-01-21 15:23 紫英626 阅读(47) 评论(0) 推荐(0)
摘要:HashTable分析 基本介绍 public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable public synchronized V put(K 阅读全文
posted @ 2022-01-21 15:15 紫英626 阅读(36) 评论(0) 推荐(0)
摘要:(其实同之前的HashSet的分析差不多,详情可以看之前的) 1.执行构造器语句,初始化加载因子,并且将table表等初始化为null public HashMap() { this.loadFactor = DEFAULT_LOAD_FACTOR; // all other fields defa 阅读全文
posted @ 2022-01-20 00:13 紫英626 阅读(43) 评论(0) 推荐(0)
摘要:LinkedHashSet源码分析 介绍 LinkedHashSet继承了HashSet,同时也实现了Set接口 底层实现 因为具体的添加过程走的还是之前hashmap的add()方法,所以这里我们就捡重点的说 还是先debug一段简单的代码: package collection.set.link 阅读全文
posted @ 2022-01-19 01:04 紫英626 阅读(38) 评论(0) 推荐(0)
摘要:HashSet源码分析 基本说明 实现了Set接口 HashSet实际上是HashMap,这里可以看到HashSet的构造器走的是HashMap 3.可以存放null,但只可以存放一个null 4.HashSet不保证元素的存放顺序和取出顺序一致(可能一致也可能不一致) 5.不能有重复的元素(同Se 阅读全文
posted @ 2022-01-17 21:09 紫英626 阅读(48) 评论(0) 推荐(0)
摘要:LinkedList源码分析 ArrayList和LinkedList比较 ArrayList改查效率高是因为数组可以通过索引直接定位,LinkedList则需要从头遍历 另外这两个都是线程不安全的,在单线程的时候考虑使用 模拟双向链表 为了便于理解这里我们先模拟一个简单的双向链表: package 阅读全文
posted @ 2022-01-17 03:58 紫英626 阅读(42) 评论(0) 推荐(0)
摘要:Vector源码分析 Vector基本介绍 Vector与ArrayList的比较 源码解读——无参构造器 public class VecorSource { public static void main(String[] args) { // 使用无参构造器初始化Vector Vector v 阅读全文
posted @ 2022-01-17 01:54 紫英626 阅读(42) 评论(0) 推荐(0)
摘要:ArrayList源码分析 注意事项 底层源码(重点、难点!!!) 使用无参构造器 public class ArrayListSource { public static void main(String[] args) { //使用无参构造器创建arraylist对象 ArrayList lis 阅读全文
posted @ 2021-12-30 20:17 紫英626 阅读(53) 评论(0) 推荐(0)
摘要:集合 学习注意点:具体应用场景和源代码的阅读 集合框架体系图(背下来!!!) 单列集合: 双列集合: Collection接口 常用方法 collection接口遍历方法 1.Iterator迭代器 package collection; import java.util.ArrayList; im 阅读全文
posted @ 2021-12-29 15:00 紫英626 阅读(96) 评论(0) 推荐(0)
摘要:1. public static void main(String[] args) { String s="abcdef"; System.out.println("交换前:"+s); try { s=reverse(s,1,4); } catch (Exception e) { System.ou 阅读全文
posted @ 2021-12-28 23:45 紫英626 阅读(55) 评论(0) 推荐(0)
摘要:System类 (1) 这里只执行了ok1 (2) public static native void arraycopy(Object src, int srcPos,Object dest, int destPos,int length); 参数说明: src:源对象srcPos:源数组中的起始 阅读全文
posted @ 2021-12-28 19:53 紫英626 阅读(41) 评论(0) 推荐(0)
摘要:Math类 基本介绍 常用方法 取a-b之间整数公式 int r =(int)(a+Math.random()*(b-a+1)); Arrays类 (1) int[] a= {1,45,56}; System.out.println(Arrays.toString(a)); //[1, 45, 56 阅读全文
posted @ 2021-12-28 17:30 紫英626 阅读(54) 评论(0) 推荐(0)
摘要:StringBuffer类 基本介绍 StringBuffer与String比较 构造方法 1. 2. 3. StringBuffer与String相互转换 1.String ->StringBuffer (1) (2) 2.StringBuffer ->String (1) (2) StringB 阅读全文
posted @ 2021-12-28 10:06 紫英626 阅读(43) 评论(0) 推荐(0)
摘要:String类 String类的理解和对象创建 String name = "tom"; 这里 name 是变量,tom是常量,可以将新的字符串赋值给变量name name = "jack"; 我们先来看一下继承关系 接着看一下String类的源码 public final class String 阅读全文
posted @ 2021-12-27 14:25 紫英626 阅读(75) 评论(0) 推荐(0)
摘要:包装类(Warpper) 除了Boolean和Character其他六个包装类都是继承的Number 包装类和基本数据类型的转换(以int为例,其他类型以此类推) // 手动装箱 int -> Interger int n1 = 100; Integer integer = new Integer( 阅读全文
posted @ 2021-12-26 20:41 紫英626 阅读(103) 评论(0) 推荐(0)
摘要:传统方法 package oop.program; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; public class SmallChangeSys01 { public s 阅读全文
posted @ 2021-12-26 20:34 紫英626 阅读(132) 评论(0) 推荐(0)
摘要:整体结构 工具类——Utility package oop.houserentexercise; /** 工具类的作用: 处理各种情况的用户输入,并且能够按照程序员的需求,得到用户的控制台输入。 */ import java.util.*; /** */ public class Utility { 阅读全文
posted @ 2021-12-26 20:32 紫英626 阅读(190) 评论(0) 推荐(0)
摘要:1. /** * @author 紫英 * @version 1.0 * @discription 接口作业 */ public class Homework { public static void main(String[] args) { Person person = new Person( 阅读全文
posted @ 2021-12-26 20:25 紫英626 阅读(66) 评论(0) 推荐(0)

紫英