salmon_zhang
码龄8年
关注
提问 私信
  • 博客:413,887
    413,887
    总访问量
  • 57
    原创
  • 1,864,518
    排名
  • 379
    粉丝
  • 2
    铁粉

个人简介:android应用开发

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2016-10-18
博客简介:

张许平的博客

博客描述:
菩提本无树,明镜亦非台。 本来无一物,何处惹尘埃!
查看详细资料
个人成就
  • 获得686次点赞
  • 内容获得97次评论
  • 获得3,251次收藏
  • 代码片获得4,105次分享
创作历程
  • 13篇
    2020年
  • 27篇
    2019年
  • 9篇
    2018年
  • 9篇
    2017年
成就勋章
TA的专栏
  • C++
    5篇
  • java并发编程
  • android基础知识
    6篇
  • android自定义控件
    3篇
  • 自定义框架
    1篇
  • 第一行代码
    10篇
  • 代码笔记
    3篇
  • 基本技能
    9篇
  • 年度总结
    2篇
  • Android框架层
    6篇
  • 数据结构与算法
    11篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

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

ADB命令大全

此文章内容整合自网络,欢迎转载。 我相信做Android开发的朋友都用过ADB命令,但是也只是限于安装应用push文件和设备重启相关,更深的就不知道了,其实我们完全可以了解多一点,有一些不常用的场景我们至少应该知道它可以做到,比如,我们知道adb install 却不知道adb s...
转载
发布博客 2020.12.21 ·
1036 阅读 ·
3 点赞 ·
0 评论 ·
2 收藏

职工管理系统(C++)

1、管理系统需求职工管理系统可以用来管理公司内所有员工的信息本教程主要利用C++来实现一个基于多态的职工管理系统公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责普通员工职责:完成经理交给的任务经理职责:完成老板交给的任务,并下发任务给员工老板职责:管理公司所有事务管理系统中需要实现的功能如下:退出管理程序:退出当前管理系统增加职工信息:实现批量添加职工功能,将信息录入到文件中,职工信息为:职工编号、姓名、部门编号显示职工信息:显示
原创
发布博客 2020.12.04 ·
17202 阅读 ·
68 点赞 ·
6 评论 ·
223 收藏

C++核心编程

本阶段主要针对C++面向对象编程技术做详细讲解,探讨C++中的核心和精髓。1 内存分区模型C++程序在执行时,将内存大方向划分为4个区域代码区:存放函数体的二进制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程1.1 程序运行前​ 在程序编译后,生成了exe可执行程序,未
原创
发布博客 2020.11.30 ·
1126 阅读 ·
4 点赞 ·
0 评论 ·
22 收藏

通讯录管理系统(C++)

1、系统需求通讯录是一个可以记录亲人、好友信息的工具。本教程主要利用C++来实现一个通讯录管理系统系统中需要实现的功能如下:添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)最多记录1000人显示联系人:显示通讯录中所有联系人信息删除联系人:按照姓名进行删除指定联系人查找联系人:按照姓名查看指定联系人信息修改联系人:按照姓名重新修改指定联系人清空联系人:清空通讯录中所有信息退出通讯录:退出当前使用的通讯录2、创建项目创建项目步骤如下:创建新项目
转载
发布博客 2020.11.18 ·
34055 阅读 ·
146 点赞 ·
31 评论 ·
578 收藏

C++基础入门教程

1 C++初识1.1 第一个C++程序编写一个C++程序总共分为4个步骤创建项目创建文件编写代码运行程序1.1.1 创建项目​ Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开1.1.2 创建文件右键源文件,选择添加->新建项给C++文件起个名称,然后点击添加即可。1.1.3 编写代码#include<iostream>using namespace std;int main() { cout <<
原创
发布博客 2020.11.17 ·
42507 阅读 ·
100 点赞 ·
12 评论 ·
656 收藏

Visual Studio下载、安装、运行教程

环境搭建步骤:下载软件安装软件运行软件1. 下载软件在百度搜索 visual studio,选择 如下图中的选项:进入Visual Studio 官网后,选择 下载Windows版,并选择Community 2019 社区版本进行下载保存软件到电脑中2. 安装软件双击运行下载的安装文件,弹出安装界面选择 使用C++的桌面开发 这一选项,如需其他,自行勾选。点击安装按钮开始安装安装时间会依据网速、电脑设备等因素会不固定。安装成功后提示重启,点击重启完成剩余配置3.
原创
发布博客 2020.11.11 ·
16271 阅读 ·
9 点赞 ·
3 评论 ·
32 收藏

vim入门教程

1. 移动光标H:左J:下K:上L:右2. 模式vim的模式有如下几种,但我们只需要掌握其中几个比较常见的模式即可。2.1 普通模式进入普通模式的方式:vi + fileName通过vi + fileName 打开文件时就是普通模式,通过hjkl移动光标查看文件。2.2 插入模式进入插入模式的几种方式:3. 退出3.1 不保存修改强制退出:q!3.2 保存修改并退出:wq 或者 shift + zz4. 删除在普通模式下,删除单个字符用x命令
原创
发布博客 2020.08.12 ·
1219 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

volatile的学习总结

1.volatile是Java虚拟机提供的轻量级的同步机制保证可见性不保证原子性禁止指令重排2. Java内存模型(JMM)JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过规范定义了程序中的各个变量(包括实例字段、静态字段和构成数组对象的元素)的访问方式。JMM的同步规定:线程解锁前,必须把共享变量的值刷新回主内存线程加锁前,必须读取主内存的最新值到自己的工作内存加锁解锁是
原创
发布博客 2020.07.06 ·
366 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

gitHub搜索技巧总结

1. GitHub Trend 和 GitHub TopicGitHub Trend:总结每天/每周/每月的热门Repositories和Developers,可以查看某个周期时的热门开发项目和开发者。点击进入GitHub TrendGitHub Topic:展示最新和流行的讨论主题,你可以看到开发项目和一些开发技术的讨论主题。点击进入GitHub Topic2. GitHub常用词的含义watch:会持续受到该项目的动态fork:复制某个项目到自己的Github仓库中sta
原创
发布博客 2020.05.29 ·
1868 阅读 ·
1 点赞 ·
0 评论 ·
15 收藏

数据结构——顺序存储二叉树

因为从数据存储的角度来看,数组存储方式和树的存储方式是可以互相转换的,即数组可以转换为树,而树也可以转换成数组。八大排序算法中的堆排序,就会使用到顺序存储二叉树,后面在堆排序算法中会体现出来。1. 什么叫作顺序存储二叉树当一颗二叉树满足如下两个条件时,就是顺序存储二叉树:二叉树是以数组的方式存放数据的。如下图所示:在遍历数组时,仍然可以按照前序遍历、中序遍历和后序遍历的方式来完成节点的遍历2. 顺序存储二叉树的特点顺序二叉树通常只考虑完全二叉树第n个元素的左子节点在数组
原创
发布博客 2020.05.15 ·
2037 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

数据结构——树

1. 为什么需要树这种数据结构?数组存储方式的优缺点:优点:可以直接通过下标访问元素,速度快。当是有序数组的时候,还可以使用二分查找提高查询的速度。即读取效率较高。缺点:如果需要检索某个具体的值,或插入值的时候,数组会整体移动,这时候效率就较低。即存储效率较低链式存储方式的优缺点:优点:存储效率较高。例如在插入一个数值节点,只需要将插入节点链接到链表中就可以了,删除效率也较高。缺点:检索效率较低,例如当需要检索某个值的时候,需要从头节点开始遍历。即读取效率较低
原创
发布博客 2020.05.14 ·
301 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

自定义控件——轮播广告条

1. 效果图2. 布局文件<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <android....
原创
发布博客 2020.03.29 ·
266 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

自定义控件——旋转菜单

1. 效果图2. 布局文件<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <!--这里有个坑...
原创
发布博客 2020.03.27 ·
637 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

第一行代码学习笔记第十章——探究服务

知识点目录10.1 服务是什么10.2 Android多线程编程* 10.2.1 线程的基本用法* 10.2.2 在子线程中更新UI* 10.2.3 解析异步消息处理机制* 10.2.4 使用AsyncTask10.3 服务的基本用法* 10.3.1 定义一个服务* 10.3.2 启动和停止服务* 10.3.3 活动和服务进行通信10.4 服务的生...
原创
发布博客 2019.12.30 ·
780 阅读 ·
0 点赞 ·
1 评论 ·
4 收藏

第一行代码学习笔记第九章——使用网络技术

知识点目录9.1 WebView的用法9.2 使用HTTP协议访问网络* 9.2.1 使用HttpURLConnection* 9.2.2 使用OkHttp9.3 解析XML格式数据* 9.3.1 Pull解析方式* 9.3.2 SAX解析方式9.4 解析JSON格式数据* 9.4.1 使用JSONObject* 9.4.2 使用GSON9...
原创
发布博客 2019.12.24 ·
680 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

第一行代码学习笔记第八章——运用手机多媒体

知识点目录8.1 将程序运行到手机上8.2 使用通知* 8.2.1 通知的基本使用* 8.2.2 通知的进阶技巧* 8.2.3 通知的高级功能8.3 调用摄像头和相册* 8.3.1 调用摄像头拍照* 8.3.2 从相册中选择照片8.4 播放多媒体文件* 8.4.1 播放音频* 8.4.2 播放视频8.5 小结与点评知识点回顾8.1...
原创
发布博客 2019.12.18 ·
661 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第一行代码学习笔记第七章——探究内容提供器

知识点目录7.1 内容提供器简介7.2 运行权限* 7.2.1 Android权限机制详解* 7.2.2 在程序运行时申请权限7.3 访问其他程序中的数据* 7.3.1 ContentResolver的基本用法* 7.3.2 读取系统联系人7.4 创建自己的内容提供器* 7.4.1 创建内容提供器的步骤* 7.4.2 实现跨程序数据共享7....
原创
发布博客 2019.12.13 ·
585 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

第一行代码学习笔记第六章——详解持久化技术

知识点目录6.1 持久化技术简介6.2 文件存储* 6.2.1 将数据存储到文件中* 6.2.2 从文件中读取数据6.3 SharedPreferences存储* 6.3.1 将数据存储到SharedPreferences中* 6.3.2 从SharedPreferences中读取数据* 6.3.3 实现记住密码功能6.4 SQLite数据库存储*...
原创
发布博客 2019.12.11 ·
833 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

第一行代码学习笔记第五章——详解广播机制

知识点目录5.1 广播机制5.2 接收系统广播* 5.2.1 动态注册监听网络变化* 5.2.2 静态注册实现开机广播5.3 发送自定义广播* 5.3.1 发送标准广播* 5.3.2 发送有序广播5.4 使用本地广播5.5 广播的最佳实践——实现强制下线功能5.6 Git时间——初识版本控制工具* 5.6.1 安装Git* 5.6...
原创
发布博客 2019.12.06 ·
561 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

第一行代码学习笔记第四章——探究碎片

知识点目录4.1 碎片是什么4.2 碎片的使用方式* 4.2.1 碎片的简单用法* 4.2.2 动态添加碎片* 4.2.3 在碎片中模拟返回栈* 4.2.4 碎片和活动之间进行通信4.3 碎片的生命周期* 4.3.1 碎片的状态和回调* 4.3.2 体验碎片的生命周期4.4 动态加载布局的技巧* 4.4.1 使用限定符* 4.4.2 使用最小宽度...
原创
发布博客 2019.11.26 ·
388 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多