- 博客(22)
- 收藏
- 关注
原创 数据结构和算法(四)——栈及其相关算法
栈是一种运算受限的线性表,只允许在一端(栈顶)插入和删除数据。栈主要包含两个操作,入栈和出栈,也就是在栈顶插入一个数据和从栈顶删除一个数据,其时间复杂度为O(1)。栈既可以用数组来实现,也可以用链表来实现。用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈。
2022-09-26 23:53:44 747
原创 数据结构和算法(三)——链表及其相关算法
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针。链表插入删除的时间复杂度为 O(1),而随机访问的时间复杂度为 O(n)。
2022-09-26 23:52:26 512
原创 数据结构和算法(二)——数组及其相关算法
数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。而与它相对立的概念是非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。
2022-09-23 23:25:06 530
原创 如何给你的 Android App 添加自定义表情
上一篇文章介绍了 Span 的原理。这一篇文章将介绍 Span 的应用,使用 Span 来给 App 添加自定义表情。
2022-09-18 12:41:28 1503
原创 软件测试技术(七)自动化测试
软件自动化测试是相对手工测试而存在的,主要是通过所开发的软件测试工具、脚本等来实现,具有良好的可操作性、可重复性和高效率等特点。自动化测试的定义:使用一种自动化测试工具来验证各种软件测试的需求,它包括测试活动的管理与实施、测试脚本的开发与执行。在系统功能逻辑测试、验收测试、适用性测试、涉及物理交互性测试时,多采用黑盒测试的手工测试方法。单元测试、集成测试、系统负载测试、性能测试、稳定性测试、可靠性测试等比较适合采用自动化测试。那种不稳定软件的测试、开发周期很短的软件、一次性的软件等不适合自动化测试。
2022-09-14 22:35:19 2133
原创 Android自动化测试技术——Espresso的使用
在介绍的操作之前,我们先要看看如何自定义Matcher和ViewAction。MatcherMatcher是一个用来匹配视图的接口,常用的是它的两个实现类和:一些匹配的语法糖,可以让你创建一个给定的类型,而匹配的特定亚型的只有过程项匹配。 - 匹配器的期望类型。 - T的亚型:内部实现了空检查,检查的类型,然后进行转换示例:输入EditText值,如果值以000开头,则让内容为“成功”的TextView可见,否则让内容为失败的TextView可见.
2022-09-14 22:31:57 1895
原创 软件测试课程技术(六)性能测试
吞吐量是单位时间内系统处理的客户请求的数量。直接体现软件系统的性能承载能力,一般来说用请求数或页面数来衡量。例如,通过测试传输的最长时限、传输的错误率、计算的精度、响应的时限和恢复时限等性能指标,验证了软件系统是否能够达到需求规格说明中所提出的性能指标,发现了软件系统中所存在的性能瓶颈,达到了优化软件系统的目的。性能测试分为狭义性能测试、基准测试、强度测试、安全性测试、恢复测试、安装测试、可靠性测试、配置测试、可用性测试、兼容性测试和文档资料测试。每秒事务数(TPS)是指每秒系统能够处理的事务数。
2022-09-14 22:29:15 435
原创 一文讲透Android Span的原理
在生活中,我们总能看到很多特殊的文本效果,例如文本引用、关键字标红加粗、应用内自定义表情等等。通过 **Span** ,我们可以实现上述这些文字效果。
2022-09-10 22:15:32 1810
原创 软件测试技术课程总结(五)软件测试流程
验收测试是将最终产品与最终用户的当前需求进行比较的过程,是软件开发结束后,软件产品向用户交付之前进行的最后一次质量检验活动,回答开发的软件产品是否符合预期的各项要求,用户是否接受等问题。根据测试计划设计测试方案,测试设计过程输出的是各测试阶段使用的测试用例,为每一个测试需求确定测试用例集,并且确定执行测试用例的测试过程。集成测试完成以后,分散开发的模块被联接起来,构成一个完整的程序。单元测试是在软件开发过程中进行的最低级别的测试活动,其测试的对象是软件设计的最小单位,单元测试又称为模块测试。
2022-09-06 22:53:36 769
原创 软件测试技术课程总结(四)白盒测试
白盒测试方法基于被测程序的源代码开发测试用例。常见的白盒测试方法有逻辑覆盖、数据流测试、路径分析以及程序插装等。逻辑覆盖以程序内部的逻辑结构为基础设计测试用例,要求对被测程序的结构作到一定程度的覆盖,如语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖及路径覆盖。路径覆盖是最强的逻辑覆盖准则,实际上我们只能有选择地测试程序中某些有代表的性路径。
2022-09-06 22:49:35 1159
原创 软件测试技术课程总结(三)黑盒测试
黑盒测试又称正确性测试,或功能测试,是对产品的各功能进行验证,用于检查产品是否达到用户要求的功能或者说检查软件的功能是否符合规格说明。。白盒测试在测试的早期采用,而黑盒测试主要用于测试的后期。黑盒测试故意不考虑控制结构,而是注意信息域。
2022-09-06 22:47:33 679
原创 软件测试技术课程总结(二)软件测试基本知识
V模型和W模型都认为软件开发是需求、设计、编码等一系列串行的活动,而事实上,这些活动在大部分时间内可以交叉,因此,相应的测试也不存在严格的次序关系,单元测试、集成测试、系统测试之间具有反复迭代。在W模型中,需求、设计、编码等活动被视为串行,测试和开发活动保持着一种线性的前后关系,上一阶段结束,才开始下一个阶段工作,因此,W模型无法支持迭代开发模型。W模型由两个V字型模型组成,分别代表测试与开发过程,测试伴随着整个软件开发周期,测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发同步进行。
2022-09-04 16:16:48 709
原创 Android为什么要搞屏幕适配
在开发过程中,我们总是需要考虑如何适配各种的屏幕。但是你有没有想过,我们为什么需要适配屏幕呢?为什么需要那么多屏幕适配方案呢?
2022-08-30 09:35:30 778
原创 IDEA的常用操作
点击File->setting->Editor->创建一个这里取名为test之后在test中创建一个标注1是指缩写;标注2是指缩写表示的具体代码;标注3是指缩写的适用范围,点击选择范围最后单击apply和ok保存设置.之后你就可以使用这个缩写了。点击File->setting->Editor->–>Includes,加入类模板注释/***/
2022-08-23 22:50:16 396
原创 SQLite的使用和实现一个简单的数据库框架
SQLite的使用和实现一个简单的数据库框架运算符描述AND 运算符允许在一个 SQL 语句的 WHERE 子句中的多个条件的存在BETWEEN 运算符用于在给定最小值和最大值范围内的一系列值中搜索值EX
2022-08-23 22:40:50 685
原创 Glide4用法全解析
添加依赖权限对于 Glide 加载 URL 并不是必需的,但是它将帮助 Glide 处理 片状网络(flaky network) 和飞行模式。如果你正在从 URL 加载图片,Glide 可以自动帮助你处理片状网络连接:它可以监听用户的连接状态并在用户重新连接到网络时重启之前失败的请求。如果 Glide 检测到你的应用拥有 ACCESS_NETWORK_STATE 权限,Glide 将自动监听连接状态而不需要额外的改动如果要使用来将 Glide 的缓存存储到公有 SD 卡上,就需要添加权限。混淆。
2022-08-23 22:39:20 1173
原创 自学Android的高质量文章都在这儿了,建议收藏
现在自学 Android的资源非常多,但是找到好的资源需要花费很多的时间。这里分享Android的高质量文章,对自学Android很有帮助,节约你寻找资源的时间,长期更新,建议收藏。
2022-08-20 18:48:19 339
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人