shendaoyu
码龄7年
关注
提问 私信
  • 博客:37,688
    社区:1
    问答:1,691
    39,380
    总访问量
  • 27
    原创
  • 406,452
    排名
  • 72
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2018-03-09
博客简介:

shendaoyu的博客

博客描述:
Smile at life
查看详细资料
个人成就
  • 获得24次点赞
  • 内容获得26次评论
  • 获得180次收藏
  • 代码片获得137次分享
创作历程
  • 3篇
    2023年
  • 5篇
    2022年
  • 19篇
    2021年
成就勋章
TA的专栏
  • java
    3篇
  • 笔试算法系统
    1篇
  • leetcode
    1篇
  • Android
    9篇
  • Android 网络小说阅读App
    4篇
兴趣领域 设置
  • 编程语言
    java
  • 数据结构与算法
    数据结构
  • 移动开发
    kotlinflutterandroid studiogradleandroid jetpackrxjava
  • 软件工程
    性能优化
  • 学习和成长
    面试
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

二分算法 笔记

leetcode 35搜索插入位置。
原创
发布博客 2023.07.15 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

android Fragment学习笔记

使用FragmentTransaction的add()+hide(){性能好,不能hide太多fragment,不然会oom}之前的fragment效果等同replace(),但是replace会执行fragment生命周期方法。,确保fragment只会在activity第一次创建时才会被创建,当configuration发生变化activity再次创建,savedInstanceState不为null时不会重建。:在某些情况下,你可能需要在容器中创建多个重叠的组件,并控制它们的显示顺序。
原创
发布博客 2023.07.15 ·
262 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android Gradle升级到7.0+,生成apk位置

简单记录一下,今天突然把Gradle升级到7.0以上,发现assembleRelease/Dedubg运行后找不到生成的apk文件,新的生成地址从output/apk移动到intermediates/apk。
原创
发布博客 2023.07.02 ·
497 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

笔试算法 字符串匹配替换

字符串匹配替换
原创
发布博客 2022.08.07 ·
162 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

StringBuilder ==和equals

阅读StringBuilder源码发现其并没有重写equals方法,并且reverse()方法这是在源字符串基础上进行原地修改,故引用不变,故StringBuilder的equals方法和‘==’一样都是比较引用而不是值。public class Main { public static void main(String[] args) { StringBuilder st = new StringBuilder(); st.append("1");
原创
发布博客 2022.04.07 ·
204 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

双重检查锁为什么二次判空

public class Single { private volatile static Single instance; private Single() { } public Single getInstance() { if (null == instance) { synchronized (Singleton.class) { if (null == instance) {
原创
发布博客 2022.03.24 ·
1428 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

BigInteger使用

BigInteger进行进制转换注意10进制转r进制,若有字母,转出来的是小写r进制转10进制,无论x里面包含小写还是大写,出来的数字都是一样的10进制或以上的转出来是字符串的需要将里面的小写转换为大写BigInteger 方法1、BigInteger(String val,int radix),即将radix进制状态的val转换为10进制的BigInteger类型2、toString(int radix),将10进制的BigInteger类型转换为radix进制状态的String类型3、
原创
发布博客 2022.01.09 ·
1084 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

leetcode 76. 最小覆盖子串

leetcode 76. 最小覆盖子串给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。注意:对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。如果 s 中存在这样的子串,我们保证它是唯一的答案。示例 1:输入:s = “ADOBECODEBANC”, t = “ABC”输出:“BANC”class Solution { public String mi
原创
发布博客 2022.01.09 ·
202 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

八大基础排序算法思路

冒泡排序1.将数据从第一个开始与下一个数据进行比较,如果第一个数据大,则交换两个数据位置。2.将第二个数据再与下一个数据进行比较,如果第二个数据大,则交换两个数据位置。3.以此类推,直到倒数第二个数据和倒数第一个数据比较,如果倒数第二个数据大,则交换两个数据位置。(至此获得最大数据交换到最后,最后一个数据不再参与比较)4.重复1、2、3步骤 public static void buble(int[] a){ int[] beforesort = a; int
原创
发布博客 2021.12.23 ·
187 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

RecyclerView: No adapter attached; skipping layout问题解决的一种方法

问题说明:开发中经常会用到RecyclerView做布局的情况,然后在启动界面的时候因为是从数据库或网络等地方获取数据有延迟,在没有获取到数据时候就开始加载RcyclerView就会出现RecyclerView: No adapter attached; skipping layout致使APP无缘无故崩溃。解决办法:先将RecyclerView的布局setVisibility(View.GONE)隐藏,优化一些则加上一个加载画面,数据加载完成则再将RecyclerView的布局setVisibili
原创
发布博客 2021.12.02 ·
6911 阅读 ·
2 点赞 ·
1 评论 ·
9 收藏

android checkbox有效设置layout_weight

android checkbox要想有效设置layout_weight,官方推荐在线性布局下的android:layout_width=“0dp”
原创
发布博客 2021.11.29 ·
1306 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IDEA创建一个Java web项目

1.file–new–project–java enterprise2.next–finish3.新建项目依赖,新建lib目录,一定要放在WEB-INF下Build–Build Artifacts–build打包war发布在tomcat的webapp下
原创
发布博客 2021.11.21 ·
350 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MediaPlayer播放本地文件夹需要权限

MediaPlayer播放本地文件夹需要权限,需要权限,需要权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />Android后面的版本还需要需要动态申请权限。...
原创
发布博客 2021.10.09 ·
517 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

高德地图 逆地理编码问题

示例: GeocodeSearch geocodeSearch = new GeocodeSearch(this); //逆地理编码查询条件:逆地理编码查询的地理坐标点、查询范围、坐标类型。 LatLonPoint latLonPoint = new LatLonPoint(36.489411, 103.61449); // AMAP 输入参数坐标为高德类型。查找范围500m RegeocodeQuery query = new Regeoc
原创
发布博客 2021.10.04 ·
1696 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android 科大讯飞持续语音唤醒识别问题及解决

思路:提供的api中唤醒识别只能一次;因此考虑先设置持续唤醒,在唤醒结果回调中进行识别。实测:在Android 6和10都可以运行,但是在Android9中不行(麦克被唤醒占用),因此Android需要识别前关闭唤醒,识别后打开唤醒。有高手有好的思路欢迎评论区讨论。...
原创
发布博客 2021.09.21 ·
1599 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android 科大讯飞开发相关

语音未唤醒等,检查是否用了官方的speechapp,但未在androidmanifest中注册。
原创
发布博客 2021.09.03 ·
330 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

android 音乐播放器实现淡入淡出效果

淡入淡出成功返回接口类public interface MusicDoneCallBack { void onComplete();}淡入淡出工具类import android.animation.Animator;import android.animation.ValueAnimator;import android.media.MediaPlayer;import android.view.animation.LinearInterpolator;public class
原创
发布博客 2021.08.28 ·
512 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android Room预填充数据库从excel

前言搜索全网资料,并没有发现有最新room预填充数据库的详细教程,本文用一种相对比较笨的方法达到了预填充数据库的效果。第一步按照room的构建步骤在Android中建立数据库(过程就不细说,按照官方教程就可),运行程序(真机运行情况)之后在Android studio中View -->Tool Windows -->Device File Explorer 在data/data/下找到你的程序中database(一般有三个文件),右键save as保持到电脑中。第二步建立excel,建
原创
发布博客 2021.08.27 ·
1193 阅读 ·
1 点赞 ·
1 评论 ·
3 收藏

高德地图Api开发相关

public AMapLocationClientOption setInterval(long interval)设置发起定位请求的时间间隔单位:毫秒默认值:2000毫秒参数:interval - 时间间隔单位:毫秒小于1000毫秒时,按照1000毫秒计算返回:包含新的定位间隔的AMapLocationClientOption对象从以下版本开始:2.0.0...
原创
发布博客 2021.08.26 ·
171 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Orange pi 4G_IOT GPIO控制

1.通过adb连接开发板adb shell2.给引脚权限chmod 777 /sys/devices/virtual/misc/mtgpio/pin如果Android开发控制gpio,通过supersu给权限( 其它教程用的arm64下的supersu,但是我安装并不能运行,实测armv7下的可以)cd \armv7adb wait-for-deviceadb rootadb remountadb shell setenforce 0adb push .\su /system/bin
原创
发布博客 2021.08.17 ·
529 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多