- 博客(73)
- 收藏
- 关注
原创 Fragment动态切换以及生命周期
因为事先Fragment中已经写好了日志,我们打开Logcat查看对应日志即可。接下来是MainActivity和布局文件。首先我们准备好两个切换用的Fragmet。还有实现切换按钮的Fragment。
2024-04-25 12:45:30
386
原创 ViewPager2+Fragment+TabLayout 实现页面滑动
Frafment1中我还写了个Fragment切换,如果不需要可以删除,写成和Fragment2一样即可。对于Fragment中的页面内容随便写个TextView就行。
2024-04-25 12:44:49
203
原创 力扣经典150题(3)
最大(小)堆是指在树中,存在一个结点而且该结点有儿子结点,该结点的data域值都不小于(大于)其儿子结点的data域值,并且它是一个完全二叉树(不是满二叉树)。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。给出数字到字母的映射如下(与电话按键相同)。你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。,返回其所有可能的全排列。你可以按任意顺序返回答案。的字符串,返回所有它能表示的字母组合。你可以按任何顺序返回答案。给定一个不含重复数字的数组。
2024-04-24 08:19:20
374
原创 力扣经典150题(2)
完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。递归的终止条件是链表的节点个数小于或等于 1,即当链表为空或者链表只包含 1个节点时,不需要对链表进行拆分和排序。, 以数组的形式返回每一层节点的平均值。判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。,请将其按升序排列并返回排序后的链表。叶子节点是指没有子节点的节点。给你一棵完全二叉树的根节点。,求出该树的节点个数。
2024-04-14 13:12:11
500
原创 力扣经典150题(1)
之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。, 删除原始链表中所有重复数字的节点,只留下不同的数字。返回 已排序的链表。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。,旋转链表,将链表每个节点向右移动 k 个位置。,以从上往下、从左到右进行 Z 字形排列。,编写一个函数来检验这两棵树是否相同。将一个给定字符串 s 根据给定的行数。给定一个已排序的链表的头。给你两棵二叉树的根节点。给你一个链表的头节点。
2024-04-09 15:12:53
288
原创 力扣回溯篇
单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。中的同一个数字可以无限制重复被选取。如果至少一个数字的被选数量不同,则两种组合是不同的。的 所有 不同组合 ,并以列表形式返回。你可以按任意顺序返回这些组合。你可以按任意顺序返回解集。,返回其所有可能的全排列。你可以按任意顺序返回答案。,数组中的元素互不相同。
2024-04-06 21:49:00
547
原创 力扣二分篇
给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1, -1]。你必须设计并实现时间复杂度为O(log n)的算法解决此问题。输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]输入:nums = [], target = 0输出:[-1,-1]
2024-03-11 14:53:31
431
1
原创 快速解决maven依赖冲突
我们在开发过程中经常出现maven依赖冲突,或者maven版本不匹配的情况,我们可以使用。来做maven管理,添加需要的组件,然后点击获取代码,就可以获得对应的依赖文件。
2024-03-03 14:06:20
345
原创 MyBatis拦截器实现打印完整SQL语句
代替,显得看起来不是那么直观,所以通过实现了InnerInterceptor接口,并重写了。我们在执行语句的时候会使用Mybatis自带的日志打印工具,但是打印的时候参数会用。在这两个方法中,它会获取到执行的SQL语句、参数等信息,并通过日志输出。
2024-03-02 14:42:19
703
原创 面试八股文(4)
ThreadLocal类主要解决的就是让每个线程绑定自己的值,可以将ThreadLocal类形象的比喻成存放数据的盒子,盒子中存储每个线程的私有数据。一般强制线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样处理让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。
2024-02-03 13:57:49
1114
原创 面试八股文(3)
多线程编程中一般线程的个数都大于CPU核心的个数,而一个CPU核心在任意时刻只能被一个线程使用,为了让这些线程都能得到有效执行,CPU采取的策略是为每个线程分配时间片并轮转的形式。当一个线程的时间片用完的时候就会重新处于就绪状态让给其他线程使用,这个过程就属于一次上下文切换。概括来说:当前任务在执行完CPU时间片切换到另一个任务之前会保存自己的状态,以便下次再切换回这个任务时,可以再加载这个人物的状态。任务从保存到再加载的过程就是一次上下文切换。
2024-02-02 14:07:21
1036
原创 面试八股文(2)
线程安全性不同HashMap是线程不安全的,HashTable是线程安全的,其中的方法都通过Synchronized修饰,在多线程并发的情况下,可以直接使用HashTable,但是适用HashMap时必须自己增加同步处理。是否提供contains方法HashMap只有和方法;HashTable有、、三个方法,其中和方法功能相同。key与value是否允许null值HashTable中,key和value都不允许出现null值。HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所
2024-02-01 19:57:33
1068
原创 面试八股文(1)
多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而在程序运行期间才确定,即一个引用变量到底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。深拷贝和浅拷贝就是指对象的拷贝,一个对象中存在两种类型的属性,一种是基本数据类型,一种是实例对象的引用。,所以String对象是不可变的。
2024-02-01 14:52:04
1059
原创 SpringTask定时任务
Spring Task是Spring框架中的一个定时任务调度模块,它提供了一种简单的方式来实现基于时间的调度任务。使用Spring Task,可以通过Java代码配置或注解的方式定义定时任务,并设置任务的执行时间、间隔周期、触发条件等。当达到指定的时间或条件时,Spring Task会自动触发任务的执行,可以执行任何有意义的操作,例如数据备份、缓存清理、邮件发送等。Spring Task还具有以下特点:1、简单易用:简单的XML或注解配置即可实现定时任务调度。
2024-01-25 13:34:29
454
原创 EasyExcel入门使用
EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。EasyExcel 的主要特点如下:1、高性能:EasyExcel 采用了异步导入导出的方式,并且底层使用 NIO 技术实现,使得其在导入导出大数据量时的性能非常高效。2、易于使用:EasyExcel 提供了简单易用的 API,用户可以通过少量的代码即可实现复杂的 Excel 导入导出操作。
2024-01-24 10:38:07
1082
原创 Minio搭建和使用
目前可用于文件存储的网络服务选择也有不少,比如阿里云OSS、七牛云、腾讯云等等,可是收费都有点小贵。为了节约成本,很多公司使用MinIO做为文件服务器。特点:1、高性能:MinIO基于GO语言编写,具有高速、轻量级、高并发等性能特点,还支持多线程和缓存等机制进行优化,可以快速地处理大规模数据。2、安装部署简单:MinIO只需要执行这几行命令便可轻松搞定,也大大降低了学习和维护成本。3、操作简单,自带管理界面:MinIO在服务端安装后就自带了UI界面,可谓开箱即用。
2024-01-22 12:08:56
1244
原创 操作系统(复习提纲)
现在距离操作系统考试还剩三天,我今天刚刚整理好这份提纲,里面还附加了一些可能考的计算题的讲解视频,都是B站上一些优秀的UP主录制的,我觉得讲的还挺好的,对于应付考试,以不挂科为宗旨应该可以哈哈哈。
2024-01-15 11:05:23
1045
原创 SpringBoot+Hutool实现图片验证码
图片验证码在注册、登录、交易、交互等各类场景中都发挥着巨大作用,能够防止操作者利用机器进行暴力破解、恶意注册、滥用服务、批量化操作和自动发布等行为。
2024-01-09 09:46:04
946
原创 统一结果实体类
对于前后端分离的项目,后端会有很多的接口,如果没有统一结果实体类,前端接受的数据各式各样,开发沟通成本比较高。而使用统一结果实体类,将后端返回给前端的数据进行统一,沟通成本低,利于前后端协同开发。
2024-01-08 14:36:48
655
原创 SpringBoot整合Knife4j
Swagger是一种基于OpenAPI规范的API文档生成工具,它可以根据Java代码中的注解自动生成API接口文档,并提供UI界面进行在线测试和调试。Swagger为开发人员提供了更加方便、直观的API管理方式,有助于提升API的可读性和可维护性。Swagger的主要特点包括:1、自动生成API文档:通过在Java代码中添加Swagger注解,Swagger能够自动地解析API接口的参数、响应等信息,并生成相应的API文档。
2024-01-08 14:32:38
1209
原创 Android简单控件
安卓开发之简单控件在Java代码中调用文本视图对象的 setText 方法设置文本设置文本的大小:在Java代码中调用setTextSize方法,即可指定文本的大小在XML文件中则通过属性android:textSize指定文本大小,此时需要指定字号的单位设置文本的颜色:2.视图基础视图宽度通过属性android:layout_width表达,视图高度通过属性android:layout_height表达,宽高的
2024-01-08 13:53:55
1786
1
原创 Docker 部署
运行成功之后我们可以在公网进行访问(http://服务器IP:3355/),发现访问未找到的情况。现在我们外面访问(http://8.130.73.254:3355/),就可以看到Tomcat。原因:阿里云镜像原因,默认是最小的镜像,所有不必要的都被剔除,保证最小的环境。我们发现:1.Linux命令缺少 2.没有webapps。首先我们可以使用下面命令来搜索镜像(网站查询也可以)
2024-01-07 10:41:05
560
原创 Docker 基础
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。传统:开发jar,运维来做。现在:开发打包部署,一套流程。
2024-01-06 18:29:15
1071
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人