自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sfg0861的博客

记录学习编程

  • 博客(92)
  • 收藏
  • 关注

原创 Java · JDBC 介绍 · JDBC 增删改查

再配置该 jar 包到本项目的依赖中:右键点击项目 Open Module Settings,在 Modules 中,点击项目,配置 Dependencies,点击+,JARS or Directories,将该 lib 文件夹配置进依赖中,表示该文件夹下的 jar 包都引入作为依赖。这个 API 由 java.sql.*,javax.sql.* 包中的一些类和接口组成,它为 Java 开发人员操作数据库提供了一个标准的 API,可以为多种关系数据库提供统一访问。看不懂文字,可以跟着图片走…

2023-02-22 15:09:47 573

原创 Linux 的基本使用(下)· 日志文件 · 重定向 · 查看进程 · 查看端口 · Linux的用户权限文件权限 · 搭建 Java 部署环境 · 安装JDK,tomcat,MariaDB

Linux 的日志文件。head 查看文件,只看10行。tail 显示指定文件末尾内容。关于重定向。关于管道。date 指定格式显示时间。ps 展示进程。grep 对输出结果筛选。netstat 查看网络状态 / 查看端口。Linux 权限。用户操作命令。文件权限说明。不同用户操作文件的权限。搭建 Java 部署环境。yum 应用商店。在 Linux上安装 JDK。安装并访问 tomcat。安装并连接 MariaDB 数据库

2023-02-16 10:14:18 826

原创 Linux 的基本使用(上)· 背景故事 · 环境搭建 · 常用命令 vim less cp mv等(基本能覆盖 Linux 日常使用80%场景)· Linux 文件结构的意义 · 相对路径和绝对路径

ls 列出该目录下所有子目录和文件。pwd 显示用户当前所在的目录。cd 进入其它目录。tree 查看文件结构。补全。重新输入。清空屏幕。touch 创建或者更改文件夹或文件。cat 查看目标文件的内容。echo 简单的输出数据。mkdir 创建文件夹。rm 删除文件或目录。cp 复制文件或目录。mv 移动数据或重命名。man 查看帮助手册。less 查看大文件。head 看文件前10行。vim 的基本使用。

2023-02-15 16:29:36 346

原创 Xshell 7 连接云服务器的步骤和出现的错误

使用 Xshell 7 连接数据库。新建会话属性后,没有自动弹出 SSH 用户名要求输入。SSH 用户身份验证不能输入 Password。Xshell 连接 centos 7 服务器 报错提示 “ssh服务拒绝了密码,请再试一次“,但是密码是正确的。

2023-02-15 13:19:23 3095

原创 OJ刷题Day2 · 判断根结点是否等于子结点之和 · 删除有序数组中的重复项 · 合并两个有序链表 · 数组中的第K个最大元素(中等题)

给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。输入:nums = [0,0,1,1,1,2,2,3,3,4]输入: [3,2,3,1,2,4,5,5,6], k = 4。输入:l1 = [1,2,4], l2 = [1,3,4]

2023-02-11 22:34:00 421

原创 OJ刷题Day1 · 一维数组的动态和 · 将数字变成 0 的操作次数 · 最富有的客户资产总量 · Fizz Buzz · 链表的中间结点 · 赎金信

输出:[“1”,“2”,“Fizz”,“4”,“Buzz”,“Fizz”,“7”,“8”,“Fizz”,“Buzz”,“11”,“Fizz”,“13”,“14”,“FizzBuzz”]nums[i])。解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1]。解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4]。输入:accounts = [[1,5],[7,3],[3,5]]输入:accounts = [[1,2,3],[3,2,1]]

2023-02-10 20:54:39 381

原创 JavaSE · 常量介绍 · 变量类型转换 · 理解数值提升 · int 和 Stirng 之间的相互转换

Java 类型汇总,前面的内容重点介绍的都是基本数据类型每种数据类型及其范围,都是我们需要掌握的重点。难点是隐式类型转换和类型提升,我们只要在代码中避免不同类型混用的情况,就能减少出现隐式转换和类型提升。

2023-02-10 14:34:53 417

原创 在线 OJ 平台的测试项目实践

做好的,值得其它项目借鉴:测试用例根据用户需求分析来设计,而且有整体框架,算是比较详细全面。有待改善的地方:系统中有一些模块的功能是类似的,导致设计测试用例的时候重复,略显冗余。系统中的一些功能模块不好设计出较冷门的用例,建议多多练习设计测试用例,提高经验。

2023-02-09 10:11:10 3329

原创 云借阅图书管理系统的测试项目实践

做好的,值得其它项目借鉴:测试用例根据用户需求分析来设计,而且有整体框架,算是比较详细全面。有待改善的地方:系统中有一些模块的功能是类似的,导致设计测试用例的时候重复,略显冗余。系统中的一些功能模块不好设计出较冷门的用例,建议多多练习设计测试用例,提高经验。

2023-02-08 23:20:14 3600

原创 软件测试(概念进阶Ⅱ)· 测试分类 · 按开发阶段划分 · 按测试实施组织 · 按是否运行划分 · 按是否手工划分 · 按测试地域划分

概念太多,分为文章分为两篇。四、按开发阶段划分、单元测试(Unit Testing)、集测试(Integration Testing)、系统测试(System Testing)、回归测试(Regression Testing)、冒烟测试(smoke testing)、验收测试(Acceptance Testing)。五、按测试实施组织、α 测试(Alpha Testing)、β 测试(Beta Testing)、第三方测试。六、按是否运行划分、静态测试(Static testing)、动态测试(Dynam

2023-02-06 11:28:47 305

原创 软件测试(概念进阶Ⅰ)· 测试分类 · 按照测试对象划分 · 按照是否查看代码划分

概念太多,分为文章分为两篇。一、测试分类二、按测试对象划分、界面测试、可靠性测试、容错性测试、文档测试、兼容性测试、易用性测试、安装卸载测试、安全性测试、性能测试、内存泄漏测试。三、按是否查看代码划分、黑盒测试(Black-box Testing)、白盒测试(White-box Testing)、灰盒测试(Gray-Box Testing)。

2023-02-06 11:28:16 482

原创 软件测试(用例Ⅰ)· 测试用例的基本概念 · 万能公式 · 设计测试用例的方法(等价类、边界值、判定表法、正交法、场景设计法、错误猜测法)

因果图不能直出测试用例,还需要依赖判定表,所以我认为因果图有点多余,而且因果图实际在设计成测试用例的时候并没有多大意义。现在的软件几乎都是使用事件来触发控制流程的,事件的触发时候的情景就形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。解决了不知道是否较全面的测试了所有功能,测试的覆盖率无法衡量,对新版本的重复测试很难实施,存在大量冗余测试影响测试效率。错误猜测法是对软件测试设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。)和带有中文的目录里。

2023-02-06 09:41:31 2420

原创 正交表的生成工具 allParis 的使用以及遇到的异常 Can‘t open 0204.txt; at release\allpairs.pl line 368.

Can't open 0204.txt; at release\allpairs.pl line 368. 在学习设计测试用例的方法 —— 正交法的时候,需要用到正交表,所以记录一下 allParis 正交表生成工具的使用。

2023-02-04 16:31:25 1136 4

原创 软件测试(基础)· 软件测试的生命周期 · 如何描述一个 Bug · Bug 的级别 · Bug 的生命周期 · 争执 · Bug 评审

Bug 的定义每个公司都不一致,定义级别之前需要查看公司规范。以下为示例:Blocker(崩溃)阻碍开发或者测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。如:代码错误、死循环、数据库发生死锁、重要的一级菜单功能不能使用等(该问题在测试中较少出现,一旦出现应立即中止当前版本测试)。Critical(严重)系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。

2023-02-03 20:32:01 996 2

原创 软件测试(概念Ⅱ) · 开发模型 · 软件的生命周期 · 瀑布模型 · 螺旋模型 · 增量模型 · 迭代模型 · 敏捷模型 · scrum · 软件测试模型之 V 模型 & W 模型

每次迭代会产生一定的交付。2001年,以Kent Beck、Alistair Cockbum、Ward Cunningham、Martin Fowler等人为首的“轻量”过程派聚集在犹他州的Snowbird,决定把“敏捷”(Agile)作为新的过程家族的名称。这种迭代开发的模式给软件测试带来了新的要求,它不允许有一段独立的测试时间和阶段,测试必须跟着开发的迭代而迭代。:项目团队对每一个 story 进行任务分解,分解的标准是完成该 story 的所有任务,每个任务都有明确的负责人,并完成工时的初步估计。

2023-02-03 14:54:25 1897

原创 软件测试(概念Ⅰ) · 软件测试的基本概念 · 什么是需求 · 测试用例的概念 · 软件错误(bug)的概念

软测 · 软件测试的基本概念 · 什么是需求 · 测试用例的概念 · 软件错误(bug)的概念。最常见的解释是:软件测试就是找 BUG,发现缺陷。生活中有着诸多事情,我们都在默默地测试:新买来的一部手机,我们要 “测试” 它的功能;自己组装一台电脑,喜欢用跑分软件 “测试”;等等…软件测试,就是验证软件产品特性是否满足用户的需求。早期,人们更多的将测试看成对软件产品的 “检验”,检查软件的每个功能是否运行正常。衡量软件测试结果的依据。

2023-02-02 11:52:24 1615 1

原创 在线 OJ 项目(一) · 项目介绍 · 进程与线程 · 实现编译运行模块

在线 OJ 项目(一) · 项目介绍 · 进程与线程 · 实现编译运行模块。能够管理题目(保存很多题目信息)。题目列表页:能够展示题目列表。题目详情页:能够展示某个题的详细信息 + 代码编辑框。提交并运行题目:详情页中有一个 “提交” 按钮,点击按钮网页就会把当前的代码给提交到服务器上。服务器会执行代码,并且给出一些是否通过用例的结果。查看运行结果:有另外一个结果页面,能展示提交是否通过,以及错误的用例信息。

2023-01-31 16:00:00 812

原创 在线 OJ 项目(二) · 操作数据库 · 设计前后端交互的 API · 实现在线编译运行功能

在线 OJ 项目(二) · 操作数据库 · 设计前后端交互的 API · 实现在线编译运行功能。拼接的思路呢,其实就是把 testCode 的这个 main 方法,嵌入到 requestCode 里面,做法就是把 testCode 放到 Solution 的最后一个 } 的前面即可~响应:[{id:1, title:“两数之和”, level:“简单”,}, {id:2, title:“两数相加”, level:“简单”,}]响应:{error:0, reason:“出错的详细原因”,

2023-01-31 15:30:00 384

原创 在线 OJ 项目(三) · 处理项目异常 · UUID · 校验代码的安全性 · 阶段性总结

在线 OJ 项目(三) · 处理项目异常 · UUID · 校验代码的安全性 · 阶段性总结。基于多进程编程的方式,创建了一个 CommandUtil 类,来封装创建进程完成任务的工作。创建了 Task 类,把整个编译运行过程进行了封装。创建了数据库和数据表,设计了题目的存储方式。封装了数据库操作(Problem 和 ProblemDAO)。设计了前后端交互的 API。实现了这些前后端交互的 API。

2023-01-31 15:15:00 385

原创 在线 OJ 项目(四) · 前端设计与项目总结

在线 OJ 项目(四) · 前端设计与项目总结。了解要做的项目的基本要求1)题目列表页2)题目详情页3)代码编辑框4)提交给服务器编译运行5)展示结果介绍了多进程编程,基于多进程编程。封装了一个 CommandUtil 类,就可以创建进程执行一个具体的任务,同时把输出结果记录到指定的文件中。创建了一个 Task 类,调用 CommandUtil 封装了一个完整的 编译-运行 过程。后面又给 Task 类扩充了一个基于黑名单的安全代码校验。

2023-01-31 11:08:50 570 1

原创 MySQL 索引事务 · 讨论适合索引的数据结构 · N叉搜索树 · B+树 · 聚簇索引与非聚簇索引 · 事务的四个核心特性

MySQL 索引事务 · 讨论适合索引的数据结构 · N叉搜索树 · B+树 · 聚簇索引与非聚簇索引 · 事务的四个核心特性。如果这样设定,意味着随着插入 / 删除元素的操作,这个 AVL 树的规则就可能被破坏掉,需要随时的检测和调整树的结构,保证整个树始终符合 AVL 树的规则。假如在执行以上第一句 SQL 时,出现网络错误,或是数据库挂掉了,阿里巴巴的账户会减少 2000 ,但是四十大盗的账户上就没有了增加的金额。

2022-12-29 19:16:38 327 1

原创 MySQL 表的增删改查(进阶篇②)· 联合查询 内连接 外连接 · 自连接 · 子查询 exists · 合并查询 union

MySQL 表的增删改查(进阶篇②)· 联合查询 内连接 外连接 · 自连接 · 子查询 exists · 合并查询 union。接进阶篇①,我们继续学习。

2022-12-29 09:57:14 930

原创 MySQL 表的增删改查(进阶篇①)· 数据库约束 · 表的设计 · 新增查询结果 · 聚合查询 · 聚合函数 · group by · having · 笛卡尔积

MySQL 表的增删改查(进阶篇①)· 数据库约束 · 表的设计 · 新增查询结果 · 聚合查询 · 聚合函数 · group by · having。先把所有可能性通过笛卡尔积罗列出来,然后再设定条件筛选,设定条件的时候,一定至少要指定一个连接条件(两个表之间得有一个带关联关系的 id )初始化测试数据:一共有四张表,学生表student,课程表course,班级表classes,成绩表score。多表查询是对多张表的数据取笛卡尔积。筛选出来 20 条有效数据,这时候的表的含义是,每个同学的每门课的成绩。

2022-12-26 20:28:53 113

原创 Spring Boot 配置文件 · properties 基本语法 · yml 基本语法 · yml 配置不同数据以及 null · yml 配置文件读取

Spring Boot 配置文件 · properties 基本语法 · yml 基本语法 · yml 配置不同数据以及 null · yml 配置文件读取。properties 是 key-value 键值类型的配置形式;而 yml使用类似 json格式的树状配置方式,key和value之间使用冒号加空格的方式设置。properties 为早期并且默认的配置文件格式,但其配置存在一定的冗余数据,使用yml可以很好的解决数据冗余的问题。yml通用性更好,支持更多语言 ava、Go、Python等

2022-12-14 20:50:27 2917

原创 Spring Boot 概念、创建和运行 · Spring Boot 的优点 · 启动第一个 Spring Boot · Spring Boot 的注意事项

Spring Boot 概念、创建和运行 · Spring Boot 的优点 · 启动第一个 Spring Boot。Spring 的诞生是为了简化 Java 程序的开发的,而 Spring Boot 的诞生是为了简化 Spring 程序开发的。Spring Boot 翻译过来就是 Spring 脚手架。盖房子就是用脚手架,砌筑砖墙,装饰和粉刷。简单来说,就是使用脚手架能更加快速的盖房子。而 Spring Boot 就是 Spring 框架的脚手架,它就是为了快速开发 Spring 框架而诞生的。

2022-12-13 21:15:35 339

原创 Bean 作用域和生命周期 · Bean 作用域存在的问题 · Bean 六种作用域 · 执行流程 · 生命周期演示

Bean 作用域和生命周期 · Bean 作用域存在的问题 · Bean 六种作用域 · 执行流程 · 生命周期演示。限定程序中变量的可用范围叫做作用域,或者说在源代码中定义变量的某个区域叫做作用域。而 Bean 的作用域是指 Bean 在 Spring 整个框架中的某种行为模式,比如 singleton 单例作用域,就表示 Bean 在整个 Spring 中只有一份,它是全局共享的,那么当其他人修改了这个值之后,那么另一个读取到就是被修改的值。

2022-12-11 17:13:21 400

原创 Spring更简单的读取和存储对象(二) · 获取Bean对象 · 对象装配的三种实现方式 · 属性注入 · 构造方法注入 · Setter注入 · @Resource另一种注入方式

SpriSetter 注入和属性的 Setter 方法实现类似,只不过在设置 set 方法的时候需要加上 @Autowired 注解。在进行类注入的时候,除了可以使用 @Autowired 关键字之外,我们还能使用 @Resource 进行注入。下面我们接用前面的代码,按照实际开发中的模式,将 Service 类注入到 Controller 类中。程序将会报错,原因是非唯一的 Bean 对象。,是把对象取出来放到某个类中,有时候也叫。构造方法注入是在类的构造方法中实现注入。在另一个类中获取 User 对象。

2022-12-09 20:06:42 191

原创 Spring更简单的读取和存储对象(一) · 存储Bean对象 · 配置扫描路径 · 五种类注解存储Bean对象 · 方法注解@Bean的使用

Spring更简单的读取和存储对象(一) · 存储Bean对象 · 配置扫描路径 · 五种类注解存储Bean对象 · 方法注解@Bean的使用.之前我们学过存储对象到容器,再从容器里面取出来。这次我们要学习更加简单的操作 Bean 对象的方法。在 Spring 中想要。

2022-12-09 20:04:08 1138

原创 Spring 创建和使用 · 存储 bean 对象 · 获取并使用 bean 对象 · 关于配置文件 id 的注意事项 · getBean 方法的更多用法

Spring 创建和使用 · 存储 bean 对象 · 获取并使用 bean 对象 · 关于配置文件 id 的注意事项 · getBean 方法的更多用法。操作容器之前,需要先获取容器。存对象。创建 Bean(普通类);将 Bean 注册(配置)到 spring-config.xml 中。取对象。得到 Spring 上下文,并读取到 Spring 的配置文件。获取某个 Bean 对象。使用 Bean 对象。

2022-12-09 15:10:17 693

原创 Spring 核心与设计思想 · Spring IoC容器 · 控制反转式程序开发 · DI概念

Spring 核心与设计思想 · IoC容器 · 控制反转式程序开发 · DI概念。容器是用来容纳某种物品的基本装置。——来自:百度百科Java 中的容器有哪些?例如:List / Map -> 数据存储容器Tomcat -> Web 容器Spring 也是一个容器,Spring 是什么容器呢?Spring 是一个 IoC 容器。什么是 IoC?IoC = Inversion of Control 翻译成中文是 “控制反转” 的意思,也就是说 Spring 是一个 “控制反转” 的容器。

2022-12-09 11:03:32 350

原创 MySQL 表的增删改查(基础篇) · CRUD增删改查 · insert 增加 · select 查询 · update 修改 · delete 删除

MySQL 表的增删改查(基础篇) · CRUD增删改查 · insert 增加 · select 查询 · update 修改 · delete 删除。SQL 中最核心的是 select,select 最核心的就是 where 条件。通过 delete from 的方式来删表,这种操作会一条一条的删除。为查询结果中的列指定别名,表示返回的结果集中,以别名作为该列的名称。如果数据比较多,效率低,相比之下直接删表 drop 的速度会快很多。SQL 中的条件,相当于 “过滤器”,而不是 “逻辑分支”。

2022-11-18 15:56:32 922

原创 二叉树Ⅲ · 层序遍历 · 判断完全二叉树 · 公共祖先 · 搜索二叉树与双向链表 · 先序构造二叉树 · 先序 / 后序与中序构造二叉树 · 二叉树前中后序非递归遍历实现

二叉树Ⅲ · 层序遍历 · 判断完全二叉树 · 公共祖先 · 搜索二叉树与双向链表 · 先序构造二叉树 · 先序 / 后序与中序构造二叉树 · 二叉树前中后序非递归遍历实现。经过之前两篇 👉👉的学习,我们终于进入二叉树Ⅲ · 进阶内容了!冲冲冲~

2022-11-18 11:55:01 114

原创 MySQL 数据库基础 · 数据库操作增删查 · 常用数据类型 · 数据表的增删查

MySQL 数据库基础 · 数据库操作增删查 · 常用数据类型 · 数据表的增删查。- 显示-- 创建create database 数据库名;-- 使用use 数据库名;-- 删除drop database 数据库名;

2022-11-09 20:44:46 119

原创 数据库简单介绍 · 数据库分类 · SQL分类

数据库简单介绍 · 数据库分类 · SQL分类。存储数据用文件就可以了,为什么还要使用数据库?因为 文件保存数据有以下几个缺点:* 文件的安全性问题* 文件不利于数据查询和管理* 文件不利于存储海量数据* 文件在程序中控制不方便为了解决上述问题,专家们设计出更加利于管理数据的软件 —— 数据库,它能够更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

2022-11-09 18:55:04 577

原创 二叉树Ⅱ · 二叉树的基本操作 · 二叉树的前序遍历/中序遍历/后序遍历 · 节点个数 · 叶子节点个数 · 二叉树高度 · 查询二叉树中val值的位置 · 平衡二叉树 · 对称二叉树

二叉树Ⅱ · 二叉树的基本操作 · 二叉树的前序遍历/中序遍历/后序遍历 · 节点个数 · 叶子节点个数 · 二叉树高度 · 查询二叉树中val值的位置 · 平衡二叉树 · 对称二叉树。每次遍历都是通过return里面的+1,对子树高度相加。遍历二叉树的时候,如果没有进行某种约定,每个人都按照自己的方式遍历,得出的结果就比较混乱,在遍历二叉树结点的时候,顺便判断二叉树是否平衡,就不需要全部结点都遍历。遍历是二叉树上最重要的操作之一,是二叉树上进行其它运算的基础。

2022-10-26 20:40:48 201

原创 二叉树Ⅰ · 树型结构 · 二叉树 · 满二叉树 · 完全二叉树 · 二叉树的性质 · 二叉树的存储

树型结构 · 二叉树 · 满二叉树 · 完全二叉树 · 二叉树的性质 · 二叉树的存储。上图给出了几种特殊的二叉树形态,从左往右依次是:空树、只有根节点的二叉树、节点只有左子树、节点只有右子树、节点的左右子树均在。若一个节点含有子节点,则这个节点称为其子节点的父节点;一个节点含有的子树的根节点称为该节点的子节点;以某节点为根的子树中任一节点都称为该节点的子孙。一个节点含有的子树的个数称为该节点的度;具有相同父节点的节点互称为兄弟节点;一棵树中,没有双亲节点的节点;

2022-10-26 19:43:08 757

原创 栈(Stack) · 队列(Queue) · 循环队列 · 双端队列

栈(Stack) · 队列(Queue) · 循环队列 · 双端队列。双端队列是指允许两端都可以进行入队和出队操作的队列,deque 是 “double ended queue” 的简称。队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有。因为要和空的循环队列区分,所以满的循环队列要浪费一个空间,来表示这是满的循环队列。相对来说,顺序表的实现上要更为简单一些,所以我们优先使用顺序表实现栈。队列也可以数组和链表的结构实现,使用链表的结构实现更优一些。

2022-09-29 20:48:55 495

原创 Java · List的使用 · List的常用方法 · ArrayList顺序表 · LinkedList链表 · 打牌小程序 · 杨辉三角List实现

Java · List的使用 · List的常用方法 · ArrayList顺序表 · LinkedList链表 · 打牌小程序 · 杨辉三角List实现。使用 subList 方法截取的部分 list,如果去修改,会影响到原来的数据和截取的数据。LinkedList 底层代码其实是一个双向链表。如果这 10 容量使用满,那么它就会扩容,方式是。的时候,源码底层最终会找到 grow 扩容函数,这个时候,ArrayList 的。因为 subList 方法只是。

2022-09-29 16:30:43 354

原创 Java · 泛型(Generic)的使用 · 包装类(Wrapper Class) · 装箱和拆箱

Java · 泛型(Generic)的使用 · 包装类(Wrapper Class) · 装箱和拆箱泛型是为了解决某些容器、算法等代码的通用性而引入的,并且在编译期间做类型检查。泛型利用的是 Object 是所有类的祖先类,并且父类的引用可以指向子类对象的特定而工作。泛型是一种编译期间的机制,即 MyArrayList 和 MyArrayList 在运行期间是一个类型。泛型是 Java 中的一种合法语法,标志就是尖括号 < >。

2022-09-27 21:30:49 408

原创 Java 集合与数据结构 · 接口 interfaces ·Collection 常用方法 · Map 常用方法

Java 集合与数据结构 · 接口 interfaces ·Collection 常用方法 · Map 常用方法。Java 集合框架 Java Collection Framework,又被称为容器 container,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes

2022-09-26 22:08:58 426

空空如也

空空如也

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

TA关注的人

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