diff --git a/imgh/image-20250410161244449.png b/imgh/image-20250410161244449.png new file mode 100644 index 0000000..d84e141 Binary files /dev/null and b/imgh/image-20250410161244449.png differ diff --git a/imgh/image-20250410163119332.png b/imgh/image-20250410163119332.png new file mode 100644 index 0000000..3fefdee Binary files /dev/null and b/imgh/image-20250410163119332.png differ diff --git a/imgh/image-20250410163250157.png b/imgh/image-20250410163250157.png new file mode 100644 index 0000000..30813da Binary files /dev/null and b/imgh/image-20250410163250157.png differ diff --git a/imgh/image-20250410173852190.png b/imgh/image-20250410173852190.png new file mode 100644 index 0000000..778c5ff Binary files /dev/null and b/imgh/image-20250410173852190.png differ diff --git a/imgh/image-20250410174126335.png b/imgh/image-20250410174126335.png new file mode 100644 index 0000000..7602160 Binary files /dev/null and b/imgh/image-20250410174126335.png differ diff --git a/imgh/image-20250411163349987.png b/imgh/image-20250411163349987.png new file mode 100644 index 0000000..28ae576 Binary files /dev/null and b/imgh/image-20250411163349987.png differ diff --git a/imgh/image-20250411163541466.png b/imgh/image-20250411163541466.png new file mode 100644 index 0000000..bdacb4b Binary files /dev/null and b/imgh/image-20250411163541466.png differ diff --git a/imgh/image-20250411163640532.png b/imgh/image-20250411163640532.png new file mode 100644 index 0000000..7e2c828 Binary files /dev/null and b/imgh/image-20250411163640532.png differ diff --git a/imgh/image-20250411165030046.png b/imgh/image-20250411165030046.png new file mode 100644 index 0000000..f01d0b3 Binary files /dev/null and b/imgh/image-20250411165030046.png differ diff --git a/imgh/image-20250411165137534.png b/imgh/image-20250411165137534.png new file mode 100644 index 0000000..0c9fe5e Binary files /dev/null and b/imgh/image-20250411165137534.png differ diff --git a/imgh/image-20250411165732086.png b/imgh/image-20250411165732086.png new file mode 100644 index 0000000..19558a0 Binary files /dev/null and b/imgh/image-20250411165732086.png differ diff --git a/imgh/image-20250411171004330.png b/imgh/image-20250411171004330.png new file mode 100644 index 0000000..aeda14f Binary files /dev/null and b/imgh/image-20250411171004330.png differ diff --git a/imgh/image-20250411171612632.png b/imgh/image-20250411171612632.png new file mode 100644 index 0000000..7615bdb Binary files /dev/null and b/imgh/image-20250411171612632.png differ diff --git a/imgh/image-20250411171744338.png b/imgh/image-20250411171744338.png new file mode 100644 index 0000000..4e41857 Binary files /dev/null and b/imgh/image-20250411171744338.png differ diff --git a/imgh/image-20250414182746446.png b/imgh/image-20250414182746446.png new file mode 100644 index 0000000..fac0d1c Binary files /dev/null and b/imgh/image-20250414182746446.png differ diff --git a/imgh/image-20250414182932233.png b/imgh/image-20250414182932233.png new file mode 100644 index 0000000..d502592 Binary files /dev/null and b/imgh/image-20250414182932233.png differ diff --git a/imgh/image-20250414183003770.png b/imgh/image-20250414183003770.png new file mode 100644 index 0000000..766da31 Binary files /dev/null and b/imgh/image-20250414183003770.png differ diff --git a/imgh/image-20250416155256665.png b/imgh/image-20250416155256665.png new file mode 100644 index 0000000..37d28c2 Binary files /dev/null and b/imgh/image-20250416155256665.png differ diff --git a/imgh/image-20250416155750720.png b/imgh/image-20250416155750720.png new file mode 100644 index 0000000..b60d7f5 Binary files /dev/null and b/imgh/image-20250416155750720.png differ diff --git a/imgh/image-20250416155816351.png b/imgh/image-20250416155816351.png new file mode 100644 index 0000000..987d43b Binary files /dev/null and b/imgh/image-20250416155816351.png differ diff --git a/imgh/image-20250416163824387.png b/imgh/image-20250416163824387.png new file mode 100644 index 0000000..16bec04 Binary files /dev/null and b/imgh/image-20250416163824387.png differ diff --git a/imgh/image-20250416164538085.png b/imgh/image-20250416164538085.png new file mode 100644 index 0000000..2f06b23 Binary files /dev/null and b/imgh/image-20250416164538085.png differ diff --git a/imgh/image-20250417165713561.png b/imgh/image-20250417165713561.png new file mode 100644 index 0000000..37f3f2a Binary files /dev/null and b/imgh/image-20250417165713561.png differ diff --git a/imgh/image-20250417165922953.png b/imgh/image-20250417165922953.png new file mode 100644 index 0000000..b42d0cc Binary files /dev/null and b/imgh/image-20250417165922953.png differ diff --git a/imgh/image-20250420172303418.png b/imgh/image-20250420172303418.png new file mode 100644 index 0000000..e8f3740 Binary files /dev/null and b/imgh/image-20250420172303418.png differ diff --git a/imgh/image-20250425154628294.png b/imgh/image-20250425154628294.png new file mode 100644 index 0000000..951a38a Binary files /dev/null and b/imgh/image-20250425154628294.png differ diff --git a/imgh/image-20250425155604336.png b/imgh/image-20250425155604336.png new file mode 100644 index 0000000..e36df07 Binary files /dev/null and b/imgh/image-20250425155604336.png differ diff --git a/imgh/image-20250425155717100.png b/imgh/image-20250425155717100.png new file mode 100644 index 0000000..33ffcb5 Binary files /dev/null and b/imgh/image-20250425155717100.png differ diff --git a/imgh/image-20250425163309001.png b/imgh/image-20250425163309001.png new file mode 100644 index 0000000..fbcb365 Binary files /dev/null and b/imgh/image-20250425163309001.png differ diff --git a/imgh/image-20250425163323615.png b/imgh/image-20250425163323615.png new file mode 100644 index 0000000..fbcb365 Binary files /dev/null and b/imgh/image-20250425163323615.png differ diff --git a/imgh/image-20250425165520793.png b/imgh/image-20250425165520793.png new file mode 100644 index 0000000..6356945 Binary files /dev/null and b/imgh/image-20250425165520793.png differ diff --git a/imgh/image-20250425165743512.png b/imgh/image-20250425165743512.png new file mode 100644 index 0000000..775016a Binary files /dev/null and b/imgh/image-20250425165743512.png differ diff --git a/常用api以及算法.md b/常用api以及算法.md index 95b63e7..7e0afe6 100644 --- a/常用api以及算法.md +++ b/常用api以及算法.md @@ -101,9 +101,143 @@ public static boolean equals(Object a, Object b) { ![image-20250404170313844](https://gitee.com/icecat2233/picture/raw/master/20250404170322675.png) 1. 其中binarySearch()方法,给予的数组必须是排好序的。因为使用了二分法 + 2. sort()方法中,对数组进行了默认升序排序,要进行其他顺序排序,需学习**红黑树** + +## JDK7时间类 + +### Date类 + +image-20250410163119332 + + + +### SimpleDateFormat类:用于日期格式化 + +**将Date日期转化为易懂的形式** 我个人理解为可以将这个类作为修饰Date日期对象的类。 + +image-20250410163250157 + + + +如何使用 + +其中在创建日期格式化对象时,可以使用代参构造方法传入pattern,修改格式,代表元素如下图 + +```java + //创建了一个日期格式化对象,使用默认模式 + SimpleDateFormat format = new SimpleDateFormat(parttern""); + //创建日期对象,封装此刻时间 + Date date = new Date(); + //将日期对象转换为字符串 + String resul = format.format(date); + System.out.println(resul); +``` + +image-20250410161244449 + +### Calendar类: + +表示一个时间的日历对象 + +#### 如何获取对象 + +`Calendar c = Calendar.getInstance();` + +##### 常见方法 + +set 修改 + +get 获取 **注意获取月份时要进行+1操作** + +​ **获取星期时** + +image-20250410174126335 + +add 在原有基础上添加或减少 + +##### 细节点: + +image-20250410173852190 + +##### 案例: + +```java +//键盘录入一个字符串,判断今天是今年的第几天 +public class CalendarTest { + public static void main(String[] args) throws ParseException { + System.out.println("请输入你想要求的日期 格式\"xxxx年xx月xx日\""); + Scanner sc =new Scanner(System.in); + String input = sc.nextLine(); + + //使用SimpleDateFormat 将日期字符串转化为日期对象 + SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日"); + Date riqi = format.parse(input); + + //将日期对象转化为Calendar对象 + Calendar c = Calendar.getInstance(); + c.setTime(riqi); + + //使用get方法获取第几天 + int day = c.get(Calendar.DAY_OF_YEAR); + System.out.println("今天是这一年的第"+day+"天"); + } +} +``` + +## JDK8版本后时间类(常用) + +### 日历类 LocalDateTime + +如何将字符串转化为日期对象: + +**注意:尽量将格式化中的MM月dd日等只写一个字符,要不然容易报错** + +image-20250411171744338 + +```Java +LocalDate date = LocalDate.parse(birthday, DateTimeFormatter.ofPattern("yyyy年M月d日")); +``` + +如何格式化日期对象 + +image-20250411171612632 + +```java +DateTimeFormatter.ofPattern("yyyy年M月d日") +``` + +#### 创建对象? + +image-20250411163640532 + +**LocalDate time举例 LocalTime LocalDateTime三者方法一致** + +image-20250411163541466 + +#### 注意点: + +image-20250411163349987 + + + +### instant时间戳类 + +image-20250411165137534 + +### ZoneDateTime 带时区的时间对象 + +image-20250411165732086 + +### Zoneld类(时区类) + +image-20250411165030046 + +### 时间中的工具类:ChronUnit + +image-20250411171004330 ## 基本算法: diff --git a/异常.md b/异常.md new file mode 100644 index 0000000..5da5668 --- /dev/null +++ b/异常.md @@ -0,0 +1,44 @@ +# 异常 + +分为Error 和 Exception + +其中Exception中 又分为两类,如图中所示 + +image-20250414182932233 + +其中两种错误的表现形式有下列 + + + +![image-20250414183003770](imgh/image-20250414183003770.png) + +image-20250414182746446 + +# 异常的两种处理方式 + +1. **try...catch...捕获异常** + + image-20250416155256665 + +2. **throws抛出异常** + + image-20250416155816351 + +## 两种方式怎么选择: + +思路:这个问题是否需要暴漏出来? +需要暴漏,用throws + +不需要暴漏,用try catch + +## throws和throw的区别 + +image-20250416155750720 + +# 自定义异常 + +image-20250416163824387 + +# 异常中的细节 + +image-20250416164538085 diff --git a/集合-数据结构相关.md b/集合-数据结构相关.md new file mode 100644 index 0000000..7a86b47 --- /dev/null +++ b/集合-数据结构相关.md @@ -0,0 +1,104 @@ +# 集合: + +**总结:** + +image-20250417165922953 + +其中Collection接口中又分为**set**接口和**list**接口 + +## Collection: + +image-20250417165713561 + +**注意事项:** + +remove and contains方法依赖于底层equals方法 + +## 集合通用遍历方法: + +### 1.迭代器 2.增强for循环 3.forEach + +首先获取迭代器: + +`Iterator it = c.iterator();` + +其次判断循环是否还有元素 + +`hasNext()方法` `next()方法` + +注意:next()方法只调用一次,要不然会引起指针异常 + +### 迭代器源码解析: + +![image-20250420172303418](https://gitee.com/icecat2233/picture/raw/master/20250420172317333.png) + +### **三种方法演示:** + +```java +public class Test2 { + public static void main(String[] args) { + Collection c = new ArrayList<>(); + c.add(new Student("小鸟游六花",15)); + c.add(new Student("小鸟游七花",15)); + c.add(new Student("小鸟游八花",15)); + + //迭代器循环 + Iterator it = c.iterator(); + + while (it.hasNext()){ + Student stu = it.next(); + System.out.println(stu.getName()+"---"+stu.getAge()); + } + + //增强for循环 + for (Student stu:c){ + System.out.println(stu); + } + + //forEach遍历 + c.forEach(student -> System.out.println(student)); + } +} +``` + +# List集合 + +## list集合特点以及方法 + +image-20250425155604336 + +## 并发修改异常: + +image-20250425154628294 + +image-20250425155717100 + +## List集合的5种遍历方式 + +1. Iterator迭代器 +2. 增强for循环 +3. foreach +4. 普通for循环 +5. ListIterator迭代器 + +# 数据结构:栈 队列 链表 数组 + +image-20250425163323615 + +## 其中Arraylist集合扩容机制为 + +1. 在初始化时长度为0 +2. 调用添加方法add时长度为10 +3. 此后长度超过10时,会将数组长度增加原来的1/2 + +#### **源码分析**:**此为长度还未超出10时的源码过程** + +![image-20250425165520793](https://gitee.com/icecat2233/picture/raw/master/20250425165535349.png) + +#### **此为超出10时源码过程**: + +![image-20250425165743512](imgh/image-20250425165743512.png) + +## LinkedList特有方法 + +removeFirst() removeLast()