- 博客(14)
- 收藏
- 关注
原创 下册day1(Map系列的循环遍历,语法,源码等)
我们是用map.entrySet()来获取集合中的键值对。总体都是利用Map.get(K k)来进行获取的。常见的函数跟Map没有差异。
2025-10-16 22:16:11
157
原创 集合体系结构
注意:假设默认长度是16,默认加载因为0.75时,当存入12个元素以后,会自动扩容当数组的链表超过8,且数组超过64时,我们会自动将链表转成红黑树
2025-10-16 15:12:13
223
原创 记录Java学习day12(Lambda,集合)
摘要:由于Set集合没有索引,无法使用传统的for循环遍历,因此需要掌握通用的Collection遍历方法。Lambda表达式是其中一种有效的遍历方式,适用于无索引的集合操作。本文介绍了几种通用的集合遍历技术。
2025-10-15 20:29:08
207
原创 记录Java学习day11(基础算法)
快速排序算法的实现过程。首先选取第一个数作为基准值,设置start和end两个指针分别从数组两端向中间遍历。关键操作是先移动end指针找到小于基准值的数,再移动start指针找到大于基准值的数,然后交换两数位置。当两指针相遇时,将基准值与相遇点数值交换。最后递归处理基准值左右两部分子数组,直到start>=end时终止。该过程通过分治策略实现了快速排序。
2025-09-20 15:16:29
216
原创 记录Java学习day10(常见算法)
本文介绍了多种查找算法,包括有序和无序数组的查找方法。对于有序数组,详细讲解了二分查找及其变种(插值查找和斐波那契查找)的实现原理和Java代码示例。对于无序数组,重点介绍了分块查找的两种实现方式(顺序查找和二分查找优化版本)以及完整的Java实现代码。最后还介绍了哈希查找的原理,包括冲突处理的线性探测和链地址法,并提供了链地址法的Java实现示例。每种查找方法都包含具体的实现细节和适用场景分析,为不同数据分布情况下的查找需求提供了解决方案。
2025-09-18 22:59:42
427
原创 记录学习Javaday9(包装类及练习)
摘要:包装类是将基本数据类型转换为对应的引用类型。在Integer的比较中,-128到127之间的数值会直接调用预创建的数组对象,因此在该范围内的比较结果为true,范围外的比较结果为false。这种设计优化了内存使用和性能。
2025-09-17 21:21:32
203
原创 记录Java学习day7
正则表达式用于字符串格式验证和文本爬取。验证格式用字符串.matches("格式")返回布尔值,(?i)可忽略大小写。本地爬虫通过Pattern和Matcher对象实现:Pattern.compile()定义规则,matcher.find()查找匹配,group()获取结果。分组用\\n(内部)或$n(外部)引用。特殊格式包括非捕获分组(?:)、正向预查(?=)和负向预查(?!)。贪婪匹配+获取最多内容,非贪婪+?获取最少。JDK7的Date类提供时间处理功能。
2025-09-15 20:31:04
320
原创 记录Java学习day6
Java中几个常用API的基础知识。Object类重点讲解了toString()、equals()和clone()方法的使用及重写原则,区分了浅克隆与深克隆的差异。Objects类作为对象工具类被简要提及。BigInteger类用于处理大整数,详细说明了其构造方法、valueOf优化机制及底层存储原理。BigDecimal类则用于精确小数计算,解释了计算机浮点数存储局限性和该类的工作原理。学习要点包括:掌握Object类方法重写、理解克隆机制、熟悉大数处理的原理及使用方法。
2025-09-11 21:55:37
1614
原创 记录Java学习day5
Java中Math类、System类和Runtime类的学习要点:Math类采用Math.方法名()调用;System类的时间原点对中国是1970年1月1日8:00,currentTimeMillis()返回毫秒数;Runtime类需通过getRuntime()获取实例。作者还提到作息不规律,熬夜学习后白天满课健身,晚上时间紧张。全文涉及Java基础知识和个人学习状态。
2025-09-10 23:50:33
546
原创 阶段项目完
拼图游戏的开发思路和实现步骤。首先通过将图片视为一维数组并打乱顺序,再转换为二维数组记录坐标来实现图片随机排列。其次讲解了界面交互设计,包括按钮创建、三种监听方式(键盘、鼠标、动作)的实现方法,以及如何将按钮添加到界面中。最后介绍了界面美化的四个要点:调整图片位置、添加背景图、设置边框样式和优化路径选择。整个项目分为界面、菜单和按钮三大模块,重点在于交互逻辑的实现和各种监听器的应用。
2025-09-09 21:07:48
1658
原创 记录Java学习day3
Java拼图小游戏的开发过程,主要分为三个阶段:1. 项目介绍与界面搭建,包括登录、注册和游戏界面的基本功能设计;2. 游戏菜单设置,详细说明了如何创建功能菜单和"关于我们"菜单;3. 图片添加方法,讲解了如何将图片导入游戏界面并设置位置。文档重点演示了使用JFrame创建窗口、JMenuBar构建菜单系统,以及通过ImageIcon和JLabel添加图片的技术实现,强调要取消默认居中布局才能准确定位图片位置。整个项目采用模块化设计思路,将不同功能放在独立类中实现。
2025-09-08 22:46:02
785
原创 记录Java学习day2
Java内部类的定义、访问特点和分类。内部类分为成员内部类、静态内部类、局部内部类和匿名内部类。重点讲解了成员内部类的访问规则和创建方法,以及如何调用外部类数据。静态内部类只能访问外部类的静态成员,创建格式为"外部类名.内部类名"。局部内部类在方法内定义,匿名内部类则隐藏了类名,常用于实现接口或继承类。文章通过实例说明了各种内部类的使用场景和注意事项,包括访问权限、创建方式和调用规则等。
2025-09-07 20:21:11
906
原创 记录Java学习第1天
本文摘要总结了Java面向对象进阶知识,包括权限修饰符(private/protected/public)、三种代码块(局部/构造/静态)的特点及使用场景。重点讲解了抽象类与接口的区别:抽象类用于提取子类共性,必须重写全部抽象方法;接口则作为特征规则,支持多实现,JDK8后新增默认/静态方法。还介绍了接口多态和适配器模式,通过中间类空实现来简化接口方法调用。这些概念是Java面向对象编程的核心内容,对设计灵活可扩展的代码结构至关重要。
2025-09-06 18:01:23
1351
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅