- 博客(30)
- 收藏
- 关注
原创 Android 笔记:2015
只是ADT的Layout Editor在你当前的Layout文件里面设置对应的渲染上下文,说明你当前的Layout所在的渲染上下文是activity name对应的那个activity,如果这个activity在manifest文件中设置了Theme,那么ADT的Layout Editor会根据这个Theme来渲染你当前的Layout。比如说像Activity这样的系统组件,它又会包含很多的控件甚至是图片,如果它无法被垃圾回收器回收掉的话,那就算是比较严重的内存泄漏情况了。
2025-02-08 01:52:45
295
原创 Android 科大讯飞 语音转文字
第七、在 AndroidManifest.xml 文件中添加权限,注意之前的权限,重复的删除。//返回的result为识别后的汉字,直接赋值到TextView上即可。// XXXXXX 这个地方写你在科大讯飞官网创建应用后的APPID。获取手机录音机使用权限,听写、识别、语义理解需要用到此权限。手机定位信息,用来为语义等功能提供定位,提供更精准的服务。读取联系人权限,上传联系人需要用到此权限。外存储写权限,构建语法需要用到此权限。外存储读权限,构建语法需要用到此权限。允许程序改变网络连接状态。
2025-02-08 01:50:32
511
原创 Android Notification 手机系统横幅弹出提示框调用,横幅通知,RemoteViews使用实例
/ .setContentText(bundle.getString(JPushInterface.EXTRA_MESSAGE)) //设置通知栏显示内容。//.setOngoing(false)//ture,设置他为一个正在进行的通知。// .setTicker(context.getPackageName() + “消息”)//通知首次出现在通知栏,带上升动画效果的。//获取系统时间的10位的时间戳。
2025-02-07 23:33:38
305
原创 Android listview优化以及listview混合itemview
【代码】Android listview优化以及listview混合itemview。
2025-02-07 23:31:35
132
原创 Android线程思考
线程池是一种多线程处理形式,处理过程中将任务提交到线程池,任务的执行交由线程池来管理。如果每个请求都创建一个线程去处理,那么服务器的资源很快就会被耗尽,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池。
2025-02-06 17:19:50
582
原创 软件测试项目实战案例分解,跟着我一步一步操作【人力资源管理系统】
在岗位管理列表页,已上传岗位说明书的岗位后会显示【下载】按钮,点击该按钮,系统会自动下载相应的岗位说明书文件,用户到文件存放位置点击查看即可。登录系统后,人资管理员可以新签合同,可以查看、修改合同信息,对于即将届满的合同可以进行续签,对于不符合集团规定的员工,也可以终止合同。(2)待续签:若当前时间在合同有效期截止日期前1个月(含1个月)内,且未执行【续签】,则合同状态由“合同中”变为“待续签”;人资管理员登录后,默认进入个人中心首页,点击页面上方的“人资工作台”,则进入人资工作台首页。
2025-01-29 22:33:05
889
原创 软件测试面试有那么难吗?这些面试题你能回答出几个_应届生软件测试面试难吗
v模型适用于中小企业,w模型适用于中大型企业(因为人员要求高),h模型人员要求非常高,很少有公司使用。**16.**
2025-01-29 22:30:35
673
原创 开闭原则——面向对象设计原则,使用开闭原则解决实际问题
粒度越小,被复用的可能性就越大;在面向对象的程序设计中,根据原子和抽象编程可以提高代码的可复用性。
2025-01-29 04:25:53
375
原创 开门见山的问MySQL:InnoDB一棵B+树可以存放多少行数据?你如何作答?
NTFS 卷序列号: 0x78f40b2cf40aec66NTFS 版本: 3.1LFS 版本: 2.0扇区数量: 0x000000001bcb6fff簇总数: 0x0000000003796dff可用簇: 0x0000000000a63a03。
2025-01-29 04:23:47
662
原创 前端如何将项目部署到服务器(Nginx)_前端部署到nginx
一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。配置命令:vim /usr/local/nginx/conf/nginx.conf(vim + nginx目录)/usr/local/nginx/sbin/nginx -stop。5、重启服务:/usr/local/nginx/sbin/nginx -s reopen。2、执行Nginx启动命令:/usr/local/nginx/sbin/nginx;
2025-01-28 18:38:11
452
原创 vscode快捷键大全
Ctrl + Shift + Alt + PgUp / PgDown | 列(框)选择页上/下 Column (box) selection page up/down || Ctrl+K Ctrl+ ←/→ | 聚焦到上一个/下一个编辑器组 Focus into previous/next editor group || Ctrl + Shift + Alt +(箭头键) | 列(框)选择 Column (box) selection |
2025-01-28 09:35:48
1808
原创 vscode常用快捷键总结
Ctrl + T 列出所有符号Ctrl + G 跳转行Ctrl + P 跳转文件Ctrl + Shift + O 跳转到符号处Ctrl + Shift + M 或 Ctrl + J 打开问题展示面板F8 跳转到下一个错误或者警告Shift + F8 跳转到上一个错误或者警告Ctrl + Shift + Tab 切换到最近打开的文件Alt + left / right 向后、向前Ctrl + M 进入用Tab来移动焦点Ctrl + F 查询Ctrl + H 替换。
2025-01-28 09:33:47
2391
原创 python每日算法 实例详解希尔算法与时间复杂度的讨论_希尔排序 python 时间复杂度
希尔排序(Shell Sort),也称递减增量排序算法,是⼀种分组插⼊排序算法。是插入排序的一种更高效的改进版本。但希尔排序是非稳定排序算法。希尔排序的基本思想是:先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录**“基本有序”**时,再对全体记录进行依次直接插入排序。更详细思路如下:⾸先取⼀个整数d1=n/2,将元素分为d1个组,每组相邻量元素之间距离为d1,在各组内进⾏直接插⼊排序;
2025-01-24 16:29:04
383
原创 Python 一步一步教你用pyglet制作汉诺塔游戏(终篇)_用python编汉诺塔
info1.text = f’{hanns.order-hanns.array[xy[1]][-1]}号圆盘从{xy[0]+1}号塔架移动到{xy[1]+1}号塔架’info2.text = f’当前层数:{hanns.order}\t最佳步数:{2**hanns.order-1}\t当前步数:{hanns.steps}’info2.text = f’当前层数:{hanns.order}\t最佳步数:{2**hanns.order-1}\t当前步数:{hanns.steps}’
2025-01-24 02:10:35
910
原创 Mysql面试大全,看完可以吊打面试官!!!
另⼀种是使⽤ SHOW PROCESSLIST 查询,慢查询⽇志在查询结束以后才记录,所以在应⽤反应执⾏效率出现问题的时候查询慢查询⽇志不能定位问题,此时可以使⽤SHOW PROCESSLIST 命令查看当前 MySQL 正在进⾏的线程,包括线程的状态、是否锁表等,可以实时查看 SQL 的执⾏情况,同时对⼀些锁表操作进⾏优化。不过存储的不是实际的时间值⽽是系统版本号,每开始⼀个新的事务系统版 本号都会⾃动递增,事务开始时刻的系统版本号会作为事务的版本号,⽤来和查询到的每⾏记录的版本号进⾏⽐较。
2025-01-24 00:37:16
648
原创 linux学习第六十篇:Linux监控平台介绍,zabbix监控介绍,安装zabbix,忘记Admin密码如何做_adminstartor密码
C/S架构,基于C++开发,监控中心支持web界面配置和管理单server节点可以支持上万台客户端最新版本3.4,官方文档5个组件zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据数据存储 存放数据,比如mysqlweb界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力。
2025-01-23 22:57:13
1915
原创 JS常见面试题之 详解js闭包
这是前文介绍过的一个最简单的闭包例子,我们运行B函数,返回值就是B内部的匿名函数,此时m引用了变量x,所以B执行后x不会被释放,利用这一点,我们可以把比较重要或者计算耗费很大的值存在x中,只需要第一次计算赋值后,就可以通过m函数引用x的值,不必重复计算,同时也不容易被修改。这三句的时候,此时A的变量对象中i值是什么呢?在执行函数A的时候,创建了A的执行环境和变量对象,其中A的变量对象和全局变量对象中都含有a变量,根据作用域链从前向后查找,在A的变量对象中找到,所以输出1,执行完毕以后 ,A的。
2025-01-23 21:35:48
952
原创 Java线程(九):Condition-线程通信更高效的方式
这就是多个Condition的强大之处,假设缓存队列中已经存满,那么阻塞的肯定是写线程,唤醒的肯定是读线程,相反,阻塞的肯定是读线程,唤醒的肯定是写线程,那么假设只有一个Condition会有什么效果呢,缓存队列中已经存满,这个Lock不知道唤醒的是读线程还是写线程了,如果唤醒的是读线程,皆大欢喜,如果唤醒的是写线程,那么线程刚被唤醒,又被阻塞了,这时又去唤醒,这样就浪费了很多时间。int putptr/*写索引*/, takeptr/*读索引*/, count/*队列中存在的数据个数*/;
2025-01-23 18:55:39
616
原创 JavaScript逐点突破系列之函数知识点梳理,建议反复看有惊喜
返回 [0, 1, 8, 125, 1000]。在 JavaScript 中,可以根据条件来定义一个函数。比如下面的代码,当num等于 0 的时候才会定义myFuncvar myFunc;除了上述的定义函数方法外,你也可以在运行时用Function构造器由一个字符串来创建一个函数 ,很像eval()函数。当一个函数是一个对象的属性时,称之为。了解更多关于对象和方法的知识 使用对象调用函数定义一个函数并不会自动的执行它。定义了函数仅仅是赋予函数以名称并明确函数被调用时该做些什么。
2025-01-23 17:34:23
760
原创 iOS 经典全部面试题(上)
end.h中暴露 designated 初始化方法,是为了方便子类化 (想了解更多,请戳–》。按照接口设计的惯例,如果设计了“初始化方法” (initializer),也应当搭配一个快捷构造方法。而快捷构造方法的返回值,建议为 instancetype,为保持一致性,init 方法和快捷构造方法的返回类型最好都用 instancetype。
2025-01-23 16:14:05
735
原创 GitHub上超火!标星6-2K的开源项目:高仿今日头条视频列表功能
完成如上步骤就可以实现今日头条视频播放列表功能 , 更多功能请参考样例工程app。
2025-01-23 14:44:48
211
原创 Eclipse和JDK下载与安装
选择对应的系统下载即可,这里用的win10 64位操作系统,上面单选按钮选择 Accept License Agreement ,否则下载不了。最后修改path里边的值,在最后面加上:%JAVA_HOME%\bin(图片上面还有一些其他配置,这里可以不用管)JAVA_HOME值为jdk路径:(D:\Program Files\Java\jdk1.8.0_31)%JAVA_HOME%\lib。安装路径可以改一下,之后点击下一步,中间进度可能会需要一分钟左右时间。找到自己想要的版本下载,这里下载的是1.8。
2025-01-23 01:02:04
163
原创 CompletableFuture基本用法
等待Future集合中的所有任务都完成Future完成事件(即,任务完成以后触发执行动作)。。。函数式编程CompletionStage代表异步计算过程中的某一个阶段,一个阶段完成以后可能会触发另外一个阶段一个阶段的计算执行可以是一个Function,Consumer或者Runnable。
2025-01-22 23:28:56
554
原创 Android面试---弄懂这二十个问题,带你拿20K+的工作!
今天关于面试的分享就到这里,还是那句话,有些东西你不仅要懂,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。最后祝大家都能拿到令人心动的offer。,而且要能够很好地表达出来,能够让面试官认可你的理解,例如Handler机制,这个是面试必问之题。有些晦涩的点,或许它只活在面试当中,实际工作当中你压根不会用到它,但是你要知道它是什么东西。
2025-01-22 21:58:22
503
原创 Android使用RecyclerView实现瀑布流
/想改变分割线的样式 ,要定义一个drawable,然后在style里覆盖android:listDivider 属性。/*//瀑布流 错误写法 因为每次都会onbindviewholder 但不是每次都是create。//设置水平瀑布流的height集合值: 如果有该值 则不重复创建。//三个参数context,水平/竖直排列数据 ,是否反向显示。//设置RecyclerView的Item分割线。//设置REcyclerVIew布局管理。//数据改变后要执行的操作的封装 b。
2025-01-22 20:37:10
566
原创 Android studio 使用JitPack发布library到Github开源库
打开https://jitpack.io,在搜索输入OpenLibrary库的地址,点击“Look Up”之后,下方出现版本信息,点击对应版本的“Get it”,即可得到该OpenLibrary库的引用信息。其中:com.github.******是你的Github地址,OpenLibrary是库名称,1.1.0是版本号,无需使用https://jitpack.io,我们也能把它拼凑出来。如果你是第一次提交该项目会出现如下对话框,提示你这是一个新的存储库(repo),可以自定义repo的名字,和添加描述。
2025-01-22 19:15:48
324
原创 6年Python开发,教你一天入门 Python
为了帮助大家更好的学习Python,小编给大家准备了一份Python学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,需要获取方式:扫描下方即可获取。。
2025-01-22 17:49:26
608
原创 2024年Mybatis常见面试题总结(附答案)
Hibernate属于全自动ORM映射工具,使用Hibernate查询关联对象或者关联集合对象时,可以根据对象关系模型直接获取,所以它是全自动的。分页插件的基本原理是使用Mybatis提供的插件接口,实现自定义插件,在插件的拦截方法内拦截待执行的sq|,然后重写sql,根据dialect方言,添加对应的物理分页语句和物理分页参数。有了列名与属性名的映射关系后,Mybatis通过反射创建对象,同时使用反射给对象的属性逐一赋值并返回,那些找不到映射关系的属性,是无法完成赋值的。它与全自动的区别在哪里?
2025-01-22 16:17:51
871
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人