- 博客(40)
- 收藏
- 关注
原创 ConcurrentHashMap
tabAt(tab, i = (n - 1) & hash)找出当前位置的Node值,如果是null,那就说明没有发生冲突,可以进行插入操作。cas算法原理:获取当前内存的位置,还有一个期望值,如果相等,表示没有其他线程进行修改,可以插入,不然不做任何操作。发生了冲突,返回key一致,那么更新为新的value,返回旧value,如果key不一致,探测下一个位置,再重复循环上面这些步骤。如果插入结点的key和hash值与当前结点的key和hash值一致,那么更新当前结点的value。
2024-03-15 19:53:46 795
原创 【Android】更改手机主题导致app数据丢失问题
情景:在使用app过程中更改系统主题(比如从浅色主题改为深色主题),这时activity销毁重建了(即走了onPause、onStop、onSaveInstanceState、onDestroy、onCreate、onRestoreInstanceState、onStart、onResume的生命周期),所以没有保存下来的数据丢失了。解决办法:在onSaveInstanceState时存储需要保存的数据,然后在onRestoreInstanceState拿取到之前保存的数据。
2024-02-29 16:19:19 676
原创 autocrlf和safecrlf
git config --global core.autocrlf false表示提交或者拉取代码时不会进行自动格式转换。git config --global core.safecrlf true表示拒绝提交混合换行符的代码。CRLF是windows平台下的换行符,LF是linux平台下的换行符。
2024-02-27 11:56:13 849
原创 句子逆序(机试)
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”数据范围:输入的字符串长度满足 1≤�≤1000 1≤n≤1000。所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符。输入一个英文语句,每个单词用空格隔开。保证输入只包含空格和字母。
2024-01-20 18:01:16 322
原创 字符个数统计
编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次。例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3。输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。数据范围: 1≤�≤500 1≤n≤500。输入一行没有空格的字符串。
2024-01-20 17:56:14 395
原创 合并表记录
数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。接下来n行每行输入成对的index和value值,以空格隔开。先输入键值对的个数n(1
2024-01-18 23:25:05 365
原创 质数因子(机试)
写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于 0.5 ,向上取整;小于 0.5 ,则向下取整。
2024-01-18 22:51:34 301
原创 jni中使用回调的方式
在java中写一个回调方法,然后在jni中调用这个方法。在调用底层方法时把回调对象作为参数传进去,然后调用该回调对象中的方法。
2023-06-23 15:03:14 957 1
原创 Android webrtc实战(一)录制本地视频并播放,附带详细的基础知识讲解
本系列文章带大家熟悉webrtc,最终用webrtc做一个p2p音视频通话的app。本文章作为本系列第一期主要讲解一些基础知识,同时实现用webrtc播放本地录制的视频的功能。文章最后会提供完整的代码。如果有小伙伴还没有Android webrtc源码,可以关注我并私信“Android webrtc源码”,我会给大家提供源码,获取源码后以module的形式导入到自己的项目即可。
2023-04-09 15:18:49 3314
原创 Android MediaRecorder和MediaPlayer的状态
对应底层的c文件为/frameworks/av/media/libmedia/mediarecorder.cpp和frameworks/av/include/media/mediarecorder.h,总共有6个状态:各状态和方法的关系:对应底层c文件为frameworks/av/include/media/mediaplayer.h和frameworks/av/media/libmedia/mediaplayer.cpp,总共有9个状态: 各状态和方法的关系: 以上就是全部内容了,谢谢观看!
2023-04-03 21:40:24 250
原创 Vosk Android使用方法
然后在vosk-api-0.3.45\android\lib\src\main目录下新建assets目录,把模型文件放在assets目录下。删除源码vosk-api-0.3.45\android\lib\src\main\jniLibs这个目录下的文件,把编译好的so库放在这个目录下。Vosk是一个基于kaldi的开源语音识别框架,支持多种编程语言和多个平台,易于使用和集成,是做语音识别时很好的选择。,然后把文件后缀名从.aar改为.zip,再解压这个文件即可在其中jni目录下找到so库。
2023-03-07 23:53:12 1679
原创 Spring MVC必知点
1.在web.xml文件中配置DispatcherServlet dispatcher org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1
2017-04-11 11:41:07 167
原创 JdbcTemplate之query
第一步:在applicationContext.xml中配置dataSource和JdbcTemplate. com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/laogan?useUnicode=true&characterEncoding=UTF-8 root 5856929
2017-04-09 13:21:37 419
原创 jsp记录页面访问次数
if(application.getAttribute("count")==null){ application.setAttribute("count",0); } %> int count=Integer.parseInt(application.getAttribute("count").toString()); count
2017-04-07 19:41:33 2635 1
原创 javascript获取时间及动态显示时间
javascript有内置对象Date.首先,声明一个变量保存当前时间:var now=new Date();接着得到年月日及时分秒:now.toLocaleDateString();now.toLocaleTimeString();
2017-04-06 19:40:05 504
原创 网页上传图片
网页中建立一个表单 ‘在servlet中进行处理import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;imp
2017-03-18 15:36:00 638
原创 AJAX实现后台提交数据
var xmlHttp=false;function ajax(){ if(window.XMLHttpRequest){ xmlHttp=new XMLHttpRequest(); } if(window.ActiveXObject){ xmlHttp=new ActiveXObject("Msxml12.XMLHttp
2017-03-15 13:03:48 472
原创 将前端数据传到数据库
public class Getblog extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { request.getParameter("blog_title");
2017-03-14 13:08:47 3780
原创 jdbc
Class.forName("com.mysql.jdbc.Driver");Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/db");Statement stat=conn.createStatement();ResultSet rs=stat.executeQu
2017-03-12 19:28:02 145
原创 妙不可言的session之防止内容丢失
ArrayList books=(ArrayList)session.getAttribute("books"); if(books==null){ books=new ArrayList(); session.setAttribute("books",books); } String book=request.getParamete
2017-03-12 17:45:27 632
原创 在java中对文件的处理(读取,写入等)
首先导入两个包: java.io.File 和 org.apach.commons.io.FileUtils .然后: File file=new File(类名.class.getResource("").getFile()) String content=FileUtils.readFileToString(file);
2017-03-12 16:51:25 433
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人