自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (6)
  • 收藏
  • 关注

原创 入职新公司三个月总结

刚入职新公司,就接到领导的任务,做一个全新的小程序,由于之前有一些前端的基础,感觉还好,就着手研究微信开发文档2周左右,然后就开始了小程序的征程。1、微信授权登录和公司的系统对接刚开始联调登录,后台获取session_key一直遇到code失效的问题,最后解决方案:前端先请求一接口传递参数code来同步session_key。最后完美解决。2、封装http请求模块3、地图模块的使用4、一...

2019-09-26 16:07:31 416

原创 基于小程序的网络请求框架

封装网络请求类/** * 网络请求类 * * @author zhanghaohao * @date 2019-6-19 */const statusCode_success = '200'; //开发者服务器返回的 HTTP 成功状态码const CODE_SUCCESS = '0'; //接口请求成功的CODEconst CODE_TOKEN_TIMEOUT = '50...

2019-07-05 16:15:52 503

原创 网页画uml图

1、时序图 一个很好的网站https://www.websequencediagrams.com/2、uml图 一个很好的网站画图工具https://www.processon.com/

2019-06-12 21:34:27 1739 1

原创 微信小程序初探笔记(2)

1.template模版绑定数据<!--定制item模版--><template name="msgItem"> <view class="bg_con"> <text class="bg_item">{{index}}: {{msg}}</text> <text> Time: {{time}}<...

2019-05-29 20:34:23 215

原创 微信小程序初探笔记(1)

1.微信小程序内的跳转wx.navigateTo()和wx.redirectTo()的区别:wx.navigateTo()是保留当前页面,跳转到某个页面,跳转页面后可以返回上一页。wx.redirectTo()是关闭当前页面,跳转到某个页面,跳转页面后不能返回上一页。2.跳转之间传值以wx.navigateTo为例:wx.navigateTo传入的url是跳转的页面(使用相对路径)...

2019-05-29 16:20:03 197

原创 单例模式

package com.SingletonDesign;/** * 单例模式恶汉式加载 * * @author ZHANGHAOHAO089 * @date 2017/12/14 */public class SingletonDesign { private static SingletonDesign singletonDesign = new SingletonDesign(

2017-12-14 10:46:38 356

原创 Java工厂模式

首先先看一下抽象产品和具体产品类(Product)药品类package com;/** * 药品 * * @author ZHANGHAOHAO089 * @date 2017/12/13 */public abstract class Medicine { public abstract void getName(); public abstract void getNu

2017-12-13 17:05:03 224

原创 数组a,长度为n(索引为0至n-1)。现要求更新数组的各个元素,使新数组的第i个元素等于原数组中除第i个元素之外各元素之积

public static void sorttt(int[] a) { int length = a.length; int[] b = new int[length]; b[0] = 1; for (int i = 1; i < length; i++) { b[0] = b[0] * a[i - 1];

2017-08-18 15:57:48 627

原创 abcde五人打渔,打完睡觉,a先醒来,扔掉1条鱼,把剩下的分成5分,拿一份走了;b再醒来,也扔掉1条,把剩下的分成5份, 拿一份走了;然后cde都按上面的方法取鱼。问他们一共最少打了多少条鱼

public static void sort() { int x = 1;//每次分鱼的总数 int count = 5;//人的个数 int sum = 1;//总鱼数 while(count > 0) { if ((x % 5 == 1) && (x/5 > 0)) { x

2017-08-17 14:47:12 2101

原创 设计相应的数据结构和算法,尽量高效的统计一片英文文章(总单词数目)里出现的所有英文单词, * 按照在文章中首次出现的顺序打印输出该单词和它的出现次数。

package com.hao.test;import java.util.HashMap;/** * * @author zhanghaohao089 * @date 2017/8/16 */public class QueryEnglishWord { private HashMap<String, Integer> hashMap = new HashMap<>();

2017-08-17 10:38:58 878

原创 用数组实现队列

package com.example;/** * description * * @author zhanghaohao089 * @date 2017/8/15 *///编写实现队列的基本运算:判空,入队,出队(3分)// 队列中能容纳元素的最多个数是多少 (1分)public class Queue { private int[] array; pri

2017-08-15 18:00:37 587 2

原创 1分2分5分的硬币,组成1角,共有多少种组合。

这是1分2分5分必须有一个public static void sort() { int x = 1, y = 2, z = 5; for (int i = 1; i < 10/x; i++) { for (int j = 1; j < 10/y; j++) { for (int k = 1; k < 10/z;

2017-08-15 17:00:17 1111

原创 Android中的内部存储和外部存储

学而时习之,不亦说乎!今天主要总结一下Android中APP的内部存储和外部存储在Android开发中,我们很多时候会遇到内存、外部存储、内部存储。我们在android手机的设置里有清除数据和清除缓存,我想有一部分都不知道清除的到底是什么储存。内存:顾名思义,就是手机里的应用运行的空间 1、内部存储重要的文件夹就是data文件夹了,这个文件夹里边都是一些包名,打开这些包名之后我们会看到这样的一

2017-08-01 16:53:50 532

原创 俩个大数相乘(java实现)

package com.example;/** * * @author ZHANGHAOHAO089 * @date 2017/6/27 */public class BigNumber { public static void main(String args[]) { String str1 = "121255"; String str2 = "23

2017-06-27 11:25:22 1334

原创 Android中BaseAdapter的viewHolder工具类

工具类实现static class ViewHolder { public static <T extends View> T get(View view, int id) { SparseArray<View> viewHolder = (SparseArray<View>) view.getTag(); if (viewHolder == null) {

2017-06-06 14:36:37 627

原创 二叉树的遍历及创建(java)

直接上代码package com.example.zhanghaohao089.mytest;/** * Node类 * * @author ZHANGHAOHAO089 * @date 2017/5/31 */public class Node { private int data; private Node left; private Node right;

2017-05-31 17:42:49 643

转载 Kotlin在Android上的运用(四)

13.IntroductionKotlin提供了一系列的to方法将一个集合类型转换成另外一个集合类型。这一部分的第一个任务很简单,根据提示就可以完成,关于任务就不必多说。先说明一下第二部分所有任务的数据模型。这一部分所有的任务都是围绕一个商店(Shop)展开,商店有一个客户(Customer)列表。客户具有姓名、城市和订单(Order)列表三个属性。订单具有商品(Product)列表和是否已经发货两

2017-05-24 16:40:03 1159

转载 Kotlin在Android上的运用(三)

0.HelloWorld和所有其他语言一样,Kotlin Koans的第一个任务名称就是Hello World,这个任务比较简单,提示也说的很清楚,就是要求task0函数返回一个字符串OK:fun task0(): String { return "OK"}这一个任务主要涉及kotlin的函数定义。在kotlin中函数通过关键字fun声明,和Java中函数的返回类型写在函数名称前不一样,K

2017-05-24 16:34:20 1256

原创 Kotlin在Android上的运用(二)

这次主要写一下kotlin上的函数运用和bean类运用一、控件的动态使用先看一下xml布局文件<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.andr

2017-05-19 10:27:47 1931 3

原创 Kotlin在Android studio上的环境配置和运用(一)

前俩天Google的IO大会把Kotlin列为Android的开发语言之一,Android开发者有必要学习一下。 Kotlin是基于JVM的编程语言, 由JetBrains公司开发, 目前已经开源. IntelliJ IDEA, PyCharm, Android Studio等IDE, 就是出自于JetBrains公司.Kotlin介绍: Statically typed programmin

2017-05-18 10:57:11 3221

原创 retrofit2源码分析

如果对retrofit使用不太了解的可以去网上查一些资料,本篇就直接对源码进行分析了。 一、首先你需要RestfulApi 类,里面声明了咱们的请求public interface RestfulApi { // 获取时间戳 @POST("app.do?") Call<T> getTime(@Query("pattern") String pattern);}然后封装Ret

2017-05-17 17:41:08 532

原创 二分查找、折半查找

package com.hao.myrxjava;/** * 折半查找 :首先数组是已经排好序的 * * @author zhanghaohao * @date 2017/5/15 */public class HalfDivision { /** * 循环实现 * * @param array 排好序的数组 * @param value 查找

2017-05-15 14:34:20 1017

原创 AOP架构之路-AspectJ

1. 什么是AOPAOP(Aspect-Oriented Programming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义

2017-05-11 21:49:48 838

原创 LinkStack实现

package com.hao.myrxjava;/** * 简单的一个链表栈实现;非堵塞的 * * @author ZHANGHAOHAO * @date 2017/5/10 */public class LinkStack<E> { //声明节点 private class Node{ E e; Node next; pu

2017-05-11 17:06:26 614

原创 ProduceQueue;支持堵塞和非堵塞

package com.example.zhanghaohao089.mytest;import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.Re

2017-05-11 16:57:58 407

原创 Java中的一些基础算法

/** * 插入排序、冒泡排序、选择排序、快速排序 * @author ZHANGHAOHAO * @date 2017/5/10 */public class Algorithm { /** * 插入排序:把未排序的插入到有序的序列里面 * * @param array * @return */ public static v

2017-05-11 16:37:49 487

原创 OkHttp3源码分析(三)

上一篇Okhttp3源码分析(二)讲了核心类Dispatcher,下面继续往深层次讲述Okhttp3的奥秘一、HttpEngine(Http引擎类) 首先看一下构造函数public HttpEngine(OkHttpClient client, Request request, boolean bufferRequestBody, boolean callerWritesRe

2017-05-02 18:17:42 511

原创 OkHttp3源码分析(二)

上一篇Okhttp3源码分析(一)讲了Request、OkHttpClient、RealCall类,下面继续往深层次讲述Okhttp3的奥秘一、核心类Dispatcherpublic final class Dispatcher { private int maxRequests = 64; private int maxRequestsPerHost = 5; /** Executes

2017-04-27 13:56:07 558

原创 OkHttp3源码分析(一)

一、首先对Request类做一下分析:Request就是组装Http发起的请求;Http发起的请求包含什么可以看一下HTTP协议格式和header 看一下源码:public final class Request { private final HttpUrl url; private final String method; private final Headers headers

2017-04-26 17:43:33 726

原创 Android中布局中常用到的<include> <merge> <ViewStub>

include 常用于布局重用 merge 用于布局重用,而且可以减少布局层级。 布局没有基父层级 viewstub 对UI页面渲染不会消耗一点,当用到的时候直接visible就可以了

2017-04-26 10:43:14 361

原创 HTTP协议格式和header、交互过程

HTTP协议格式请求例子GET https://baidu.com HTTP/1.1 Host: gwtest.pawjzs.com Connection: Keep-Alive Accept-Encoding: gzip User-Agent: okhttp/3.2.0username=123&passwrd=123概述:请求方法 url 协议版本 header字段名称:值 …. h

2017-04-25 14:37:02 2949

原创 Android之ThreadPoolExecutor源码分析

ThreadPoolExecutor是一个有固定核心线程数的线程池,下面根据源码来详细介绍一下ThreadPoolExecutor的设计和思想首先看一下ThreadPoolExecutor的类图首先了解一下ThreadPoolExecutor的5种状态// runState is stored in the high-order bits private static final int R

2017-04-21 15:31:52 666

原创 Java和Android的Thread源码分析

首先看一下Thread的类和状态public class Thread implements Runnable { ..... /** * A representation of a thread's state. A given thread may only be in one * state at a time. */ public enu

2017-04-20 11:04:01 1567

原创 HandlerThread源码分析与实战

HandlerThread是什么? HandlerThread是一个Android封装好的线程类,里面封装了Looper,无需关心Looper的创建和循环首先看一下HandlerThread的构造函数public class HandlerThread extends Thread { int mPriority; int mTid = -1; Looper mLooper

2017-04-18 18:21:39 435

原创 异步消息机制源码分析

大家都知道Android中不能再异步线程中更新UI操作。所以异步操作要借用于Handler类。建Handler类之前必须先Looper.prepare()。然而在主线程可以直接new Handler(),因为APP启动入口是ActivityThread.main函数源码public static final void main(String[] args) { SamplingPr

2017-04-18 15:18:05 429 1

原创 Android构建编译过程

Android构建编译过程

2017-04-17 18:18:15 655 2

原创 PendingIntent详解

首先看下pendingIntent和intent的区别1、pendingIntent是将要发生的action。intent是立即发生的action2、pendingIntent可以取消。Intent不能取消3、intent必须在context内执行,所以当程序执行完,intent也终止。pendingIntent自带context,没有限制。4、intent在原来的task中运

2015-07-07 16:26:42 653

Android上canvas自定义画图案例

里面有对canvas自定义画图的案例和详情介绍,有注释

2013-04-24

二维码条码扫描和生成

里面包含了对二维码的扫描 和对二维码的生成

2013-04-24

仿照新浪微博的案例

仿照新浪微博的案例各种特效 ,及文档描述

2013-04-15

百度地图定位开发案例

关于百度地图的定位 及所需要的jar包 还有文档描述

2013-04-15

在线电影播放器

基于Android的在线播放器,网络地址的播放和本地地址的播放

2013-03-15

LBS_Android_地图定位.rar

基于Android平台的手机定位,及LBS签到系统

2013-03-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除