- 博客(396)
- 资源 (4)
- 问答 (9)
- 收藏
- 关注
原创 高校选课系统数据库设计MySQL
教师编号(teacher_id)、姓名(name)、性别(gender)、年龄(age)、院系(department)、联系方式(contact)。学号(student_id)、姓名(name)、性别(gender)、年龄(age)、院系(department)、联系方式(contact)。课程编号(course_id)、课程名称(name)、学分(credits)、上课时间(schedule)、授课教师(teacher_id)。教师(Teacher):教师编号(主键)、姓名、性别、年龄、院系、联系方式。
2025-02-22 15:29:09
97
原创 《学校一卡通管理系统》数据库MySQL的设计与实现
引言:学校一卡通管理系统旨在为学校提供一个高效的数字化管理平台,集中管理学生和教职工的账户、充值、消费、查询等日常事务。通过该系统,学生可以便捷地进行充值、消费及查看余额,管理员则可以高效地管理用户账户、充值记录、消费记录等数据。系统采用MySQL数据库,通过视图、存储过程、触发器等技术手段实现数据的高效存储和实时更新,保障账户安全,并生成各类统计报表,帮助学校了解资金流动和使用情况。整体而言,本系统旨在提升学校一卡通服务的便捷性、安全性和管理效率。
2025-01-04 22:06:41
353
1
原创 Parcelable和Serializable两种常用的序列化方式
在Android开发中,和是两种常用的序列化方式,用于在Intent、Bundle等组件之间传递对象。
2024-10-09 20:56:18
396
原创 SurfaceView简单使用案例
SurfaceView 是 Android 提供的一种用于绘图的控件,适用于需要频繁刷新界面的情况。它与 View 的主要区别在于 SurfaceView 使用了,从而提高了绘图效率,减少了界面卡顿现象。
2024-10-01 11:51:09
892
原创 美团2024年春招第一场笔试【前端&移动端方向】编程题题解Java
这题很简单,统计0的个数即可,注意使用long类型防止溢出。前缀和,时间复杂度为O(n^3)
2024-08-29 16:31:05
805
原创 仿照ContentLoadingProgressBar 的特点在Android项目中自定义Loading对话框
显示 Loading 对话框之前先等待一段时间。隐藏 Loading 对话框时判断显示时间是否达到了最短显示时间,如果没有达到就延时执行隐藏任务。/*** 自定义Loading Dialog, 用于显示加载中的状态*/// 最短显示时间// 最短延迟时间init {Activity)?// 记录开始时间// 防止延时隐藏任务的重复执行// 防止延时显示任务的重复执行// 是否已经消失// 主线程Handler// 显示if (!show()// 隐藏dismiss()
2024-08-21 22:34:24
829
原创 Android开发之滑动冲突解决方案
需要实现的效果:顶部是一个TextView,而这个TextView的内容超出了显示区域,它的内容是可以滑动的。在使用外部拦截法时,需要提前知道不拦截消息的区域,这样才能做好消息处理,所以也只有在子控件的位置和大小是固定的并且能获取到的情况下,外部拦截法才是有用的。所谓外部拦截法,是指点击事件都先经过父控件的拦截处理,如果父控件需要此事件就拦截,如果不需要就不拦截,让消息传递给子控件,这样就可以解决滑动冲突问题。法:根据业务需求,通过下面的拦截与禁止拦截的方法,决定在什么情况下滑动哪个View。
2024-08-19 11:47:52
1759
原创 《Android自定义控件高级进阶与精彩实例》第一章 3D特效 学习笔记(Kotlin版)
自定义控件CameraImageView ,继承自AppCompatImageView,重写OnDraw方法,实现效果如下。= null,init {/*** invalidate() 方法是View类的方法,用于标记当前View及其父级View(如果有)需要重绘。但是,* invalidate() 方法只能在UI线程中调用,如果在非UI线程中调用 invalidate() 方法,则会抛出异常。
2024-07-28 20:44:51
506
原创 Android面试题汇总-框架技术
Retrofit是一个类型安全的HTTP客户端,它的动态代理功能允许在运行时创建代理类,而不是在编译时。这样做的好处是可以在不知道原始类和接口的具体实现的情况下,动态地确定代理类的行为。: 当调用service的方法时,Retrofit解析方法上的注解,并根据这些注解动态构建HTTP请求。: Glide的缓存机制包括内存缓存和磁盘缓存。方法,传入API接口的Class对象,Retrofit内部使用动态代理生成该接口的实现。: 用于维护缓存项的顺序,链表头部存放最久未使用的缓存项,尾部存放最近使用的缓存项。
2024-07-09 12:54:47
881
原创 Android面试题汇总-Jetpack组件
例如,在Activity或Fragment销毁时释放资源,在Activity或Fragment处于活跃状态时更新数据,在Activity或Fragment处于暂停状态时暂停某些操作。这样,当数据发生变化时,页面能够获得通知,进而更新 UI。Android Navigation组件是一个用于在Android应用中管理导航的框架,它简化了Fragment之间的交互和数据传递。DataBinding是Android的一个库,它允许你绑定UI组件在布局文件中到数据源,这样可以更简单地编写代码来更新UI元素。
2024-07-08 22:02:38
903
原创 Android Service学习笔记
Android Service(服务)是 Android 四大组件之一,主要作用是执行后台操作。它是一个后台运行的组件,执行长时间运行且不需要用户交互的任务。即使应用被销毁也依然可以工作。Service并不是运行在一个独立的进程当中的,而是依赖于创建Service时所在的应用程序进程。当某个应用程序进程被杀掉时,所有依赖于该进程的Service也会停止运行。Started:当 Android 的应用程序组件,如活动,通过启动了服务,则服务是 Started 状态。
2024-06-15 19:45:21
1082
原创 Android面试题汇总-Jetpack组件
例如,在Activity或Fragment销毁时释放资源,在Activity或Fragment处于活跃状态时更新数据,在Activity或Fragment处于暂停状态时暂停某些操作。这样,当数据发生变化时,页面能够获得通知,进而更新 UI。Android Navigation组件是一个用于在Android应用中管理导航的框架,它简化了Fragment之间的交互和数据传递。DataBinding是Android的一个库,它允许你绑定UI组件在布局文件中到数据源,这样可以更简单地编写代码来更新UI元素。
2024-06-08 22:37:04
1173
原创 Java实现简单词法、语法分析器
语法分析器是编译器中的关键组件,用于检查源代码是否遵循编程语言的语法规则。词法分析器是编译器中的一个关键组件,用于将源代码解析成词法单元。
2024-06-08 11:58:12
556
原创 Android面试题汇总-Handler
内存泄露是指应用程序未能释放不再需要的内存,或者无意中保留了对对象的引用,从而阻止垃圾回收器回收内存。结果是,应用程序的内存使用量随着时间的推移不断增加,最终导致性能下降甚至应用程序崩溃。
2024-06-05 23:24:16
853
1
原创 分布式搜索引擎ElasticSearch学习笔记
什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API分词器的作用是什么?创建倒排索引时对文档分词用户搜索时,对输入的内容分词IK分词器有几种模式?ik_smart:智能切分,粗粒度。
2024-06-05 23:19:52
1252
原创 Docker学习笔记总结
Docker如何解决大型项目依赖关系复杂,不同组件依赖的兼容性问题?Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像Docker应用运行在容器中,使用沙箱机制,相互隔离Docker如何解决开发、测试、生产环境有差异的问题?Docker镜像中包含完整运行环境,包括系统函数库,仅依赖系统的Linux内核,因此可以在任意Linux操作系统上运行可以将程序及其依赖、运行环境一起打包为一个镜像,可以迁移到任意Linux操作系统运行时利用沙箱机制形成隔离容器,各个应用互不干扰。
2024-05-31 22:48:20
967
原创 Android面试题总结-Activity
综上所述,跨 App 启动 Activity 需要明确应用之间的关系、避免暴露不必要的 Activity,注意权限控制,以及谨慎处理 Intent 的 Extras。都是Activity生命周期中的方法,它们在处理Activity状态恢复时扮演着重要的角色。在Android开发中,Activity的标记位(Flags)用于定义Activity的启动方式和行为。在 Android 开发中,Activity 的数据保存和恢复涉及到应用的生命周期和一些特定的方法。
2024-05-22 14:43:25
758
原创 2024年安卓面试题汇总1
死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象。每个进程都持有一个资源并等待获取另一个进程已占有的资源,从而形成了一个循环等待的情况。除非有外部干预,否则这些事务都将无法向前推进。死锁通常被定义为:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的事件,而无限期陷入僵持的局面称为死锁。死锁产生的原因包括互斥条件、占有和等待条件、不剥夺条件以及循环等待条件。为了避免死锁,可以采取死锁防止、死锁避免、死锁检测和恢复等策略。死锁防止。
2024-05-19 12:20:54
873
原创 快餐数据分析Python
可以看到,一共有4622条数据,只有 choice_description列有缺失值, item_price为object类型是因为 价格前面有 $ 符号。这里先按 item_name 分组,再按 quantity 求和,as_index 表示不将 item_name 作为序号。在 choice_description 中,下单次数最多的商品是什么。在每个订单收入的基础上,对 sub_total 求均值。查看某一列有多少个不同的值,使用 nunique。一共有50种商品,我们再按数量从高到低排序。
2024-04-28 19:14:29
1857
原创 Lua基础知识
Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。官网:https://www.lua.org/Lua经常嵌入到C语言开发的程序中,例如游戏开发、游戏插件等。
2024-04-28 19:12:07
275
原创 SpringMVC学习笔记
SpringMVC隶属于Spring,是Spring技术中的一部分。那么SpringMVC到底是用来做什么的呢?回想web阶段,我们学习过Servlet,而SpringMVC与Servlet技术功能等同,均属于web层或者说表现层开发技术。SpringMVC与Servlet技术对比UserUpdateServlet:使用Servlet开发的用户修改模块UserDeleteServlet:使用Servlet开发的用户删除模块UserDeleteServlet:使用Servlet开发的用户
2024-04-28 19:11:26
590
原创 蓝桥杯2013年第四届真题(Java实现)
每行数据长度不等,是用空格分开的若干个(不大于100个)正整数(不大于100000),请注意行内和行末可能有多余的空格,你的程序需要能处理这些空格。你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。你的任务是通过编程,找出断号的ID和重号的ID。
2024-04-18 20:56:31
118
原创 第十四届蓝桥杯Java B组省赛部分题解
将各点投影到轴上,找到相交线段长度。凡是遇到大一点的数字,一律使用long,否则很容易因为溢出而丢分。当n足够大时,阶乘和的后几个数字会趋于稳定,即相等,所以只需要多试几次,找到后9位相同部分。也可以不用写这么复杂,直接将一个10进制转为x进制,然后求各位数字和。toBinaryString 转为二级制。使用Java自带的进制转换函数。
2024-04-18 20:37:19
104
原创 Android高阶技巧
Serializable的方式较为简单,但由于会把整个对象进行序列化,因此效率会比Parcelable方式低一些,所以在通常情况下,还是更加推荐使用Parcelable的方式来实现Intent传递对象的功能。也可以实现相同的效果,不过不同于将对象进行序列化,Parcelable方式的实现原理是将一个完整的对象进行分解,而分解后的每一部分都是Intent所支持的数据类型,这样就能实现传递对象的功能了。这样就把一个自定义的日志工具创建好了,之后在项目里,我们可以像使用普通的日志工具一样使用LogUtil。
2024-04-17 11:08:12
553
原创 Android Jetpack 组件
另外,由于要减少性能消耗,当Activity处于不可见状态的时候(比如手机息屏,或者被其他的Activity遮挡),如果LiveData中的数据发生了变化,是不会通知给观察者的。还有一个小细节,如果在Activity处于不可见状态的时候,LiveData发生了多次数据变化,当Activity恢复可见状态时,只有最新的那份数据才会通知给观察者,前面的数据在这种情况下相。map()方法,这个方法的作用是将实际包含数据的LiveData和仅用于观察数据的LiveData进行转换。
2024-04-15 19:20:32
955
原创 重庆交通大学2024年蓝桥杯测试赛1题解(Java版本)
他一张张地数数,一百、两百、三百、四百、五百、六百、七百、八百、九百、一千、两千、三千、四千、五千、六千、七千、八千、九千、一万、两万、三万、四万、五万、六万、七万、八万、九万、十万、二十万、三十万、四十万、五十万、六十万、七十万、八十万、九十万、一百万、两百万、…他到底有多少压岁钱呢?在C++语言的按位移位运算中,左移运算,左边移出的位丢弃,右边移出的空位,补0;右移运算,右边移出的位丢弃,左边移出的空位,如果是正数则补0,若为负数,可能补0或补1,这取决于编译系统,补0称为逻辑右移,补1称为算术右移。
2024-04-08 19:14:25
379
原创 Python爬虫入门指南:使用代码轻松实现网络数据抓取
爬虫(Spider)是一种自动化程序,通过模拟人类对网页的访问行为,从网页中抓取所需的数据并进行处理。它可以遍历网页上的链接,获取页面内容、图片、视频等各种形式的数据,甚至可以进行数据的清洗和分析。
2024-04-07 09:30:57
2019
原创 Android ContentProvider基础知识学习笔记
uri参数用于确定查询哪张表,projection参数用于确定查询哪些列,selection和selectionArgs参数用于约束查询哪些行,sortOrder参数用于对结果进行排序,查询的结果存放在Cursor对象中返回。uri参数用于确定更新哪一张表中的数据,新数据保存在values参数中,selection和selectionArgs参数用于约束更新哪些行,受影响的行数将作为返回值返回。uri参数用于确定要添加到的表,待添加的数据保存在values参数中。
2024-04-06 09:31:32
590
原创 Android数据存储技术
SharedPreferences对象中提供了一系列的get方法,用于读取存储的数据,每种get方法都对应了SharedPreferences.Editor中的一种put方法,比如读取一个布尔型数据就使用getBoolean()方法,读取一个字符串就使用getString()方法。方法,专门用于添加数据。但是,Android系统是内置了数据库的,SQLite是一款轻量级的关系型数据库,它的运算速度非常快,占用资源很少,通常只需要几百KB的内存就足够了,因而特别适合在移动设备上使用。
2024-04-05 23:27:19
1179
原创 2024年重庆交通大学第十五届蓝桥杯测试赛2题解Java版
小蓝有两双不同的鞋,可以换着穿,一双鞋,可以穿1天就换另一双,也可以连续穿2天再换另一双,但同一双鞋不能连续穿3天。用A、B代表这两双不同的鞋。小蓝有两双不同的鞋,可以换着穿,一双鞋,可以穿1天就换另一双,也可以连续穿2天再换另一双,但同一双鞋不能连续穿3天。这里说的字典序,就是先按第1天吃的糖果数从小到大排序,第1天吃的糖果数相同,再按第2天吃的糖果数从小到大排序,以此类推。输入数据占一行,为小A选用的数码管(即a, b, c, d, e, f, g中的若干个),选用的数码管按字母顺序排列,且没有重复。
2024-04-02 22:18:58
588
原创 MySQL高级部分学习笔记总结
MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上。索引是数据库中用来提高性能的最常用的工具。 视图(View)是一种虚拟存在的表。
2024-03-27 20:47:55
1246
2
原创 优必选校招软件开发岗笔试Java题解
有公约数的情况下,输出:The result is 最大公约数。公元年分除以100可整除但除以400不可整除,为平年。公元年分除以4可整除但除以100不可整除,为闰年。输入一个年月日,计算出这个日期对应的是星期几。空间限制:C/C++ 32M,其他语言64M。空间限制:C/C++ 32M,其他语言64M。无公约数的情况下,输出:No result。时间限制:C/C++ 1秒,其他语言2秒。时间限制:C/C++ 1秒,其他语言2秒。公元年分除以400可整除,为闰年。公元年分除以4不可整除,为平年。
2024-03-26 17:25:15
369
原创 Spring全家桶涉及的注解
注解用于标注相同类型的Bean优先被使用权,@Primary 是Spring3.0引入的,与@Component和@Bean一起使用,标注该Bean的优先级更高,则在通过类型获取Bean或通过@Autowired根据类型进行注入时,会选用优先级更高的。被该注解标识的类,会在指定扫描范围内被Spring加载并实例化。标注在类或方法上,标注当前产生的Bean从属于哪个环境,只有激活了当前环境,被标注的Bean才能被注册到Spring容器里,不指定环境的Bean,任何环境下都能注册到Spring容器里。
2024-03-26 10:58:05
1062
饮料商城系统源代码和报告(本次实验要求使用几种特定的设计模式,完成业务功能完整的应用程序)
2024-01-20
计算机网络综合实验报告
2024-01-20
大数据平台技术期末大作业(2023-2024-1).doc
2023-12-22
Web应用开发大作业.docx
2023-12-22
基于SpringBoot+Vue的在线考试系统源码
2023-12-22
基于SpringBoot+Vue的在线考试系统设计报告
2023-12-22
离散数学代数系统实验,证明群及其性质
2023-12-22
无人驾驶技术的发展与应用综述文档
2023-12-22
《数据结构C++版》实验一:线性表的顺序存储结构实验报告
2023-04-25
数据结构C++版-二叉树实验-使用类模板的方式实现
2022-11-27
《数据结构C++版》-顺序表实验-使用类模板的方式实现
2022-10-24
C++课程小作业-STL容器与迭代器的实现路径-设计类vector容器myVector
2022-06-14
C++面向对象程序设计课程设计-图书借阅系统
2022-05-31
为什么竞赛题解喜欢把数组大小先设置为最大
2022-04-23
划红线处是怎么回事呢?求解答
2022-04-09
main函数里面写的有点不对吧?
2022-03-31
myMap[s]++是什么意思?
2021-11-20
使用java,如何实现划线处,具体题目不管?
2021-10-16
要创建一个数组,长度为n,n<10000,n的具体值不确定
2021-10-07
请问箭头处是什么意思?
2021-09-10
final 这一行是什么意思啊?
2021-09-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人