- 博客(54)
- 收藏
- 关注
转载 Retrofit入门
链接: http://blog.youkuaiyun.com/a553181867/article/details/52093695
2016-11-19 10:00:02
433
转载 OkHttp使用
链接: http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0106/2275.html
2016-11-18 17:00:30
439
原创 如何对OkHttp进行封装?
文章整理自:http://blog.youkuaiyun.com/lmj623565791/article/details/47911083OkHttp的基础使用时比较简单的,但是在使用OkHttp的时候我们会写大量的重复代码,所以我们需要对其进行进一步的封装,那么如何封装呢? 这个封装的过程其实也可以用于其他一些类库,网上找到的比较好的类库,往往能满足基本要求,但是有时候我们需要一个更加简便的使用方式或者增
2016-11-18 16:33:35
524
原创 2、页面置换算法
置换的东西是页,当页的空间不够时,我们需要将一些内存中的页置换到外存中但是到底如何选择,需要使用算法实现一、局部置换算法置换页面的选择范围只局限于当前进程占用的物理页。1、最优页面置换算法(OPT)把最后要使用的页置换出来。 评价: - 无法实现,因为无法预知未来。但是可以用来评估其他算法的效率2、先入先出算法(FIFO)链表记录每一页,链首记录的页在物理内存中呆的时间最长,链尾最短。把链首元
2016-11-12 14:01:40
892
转载 java int与integer的区别
int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别:int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象1.Java 中的数据类型分为基本数据类型和复杂数据类型int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null.2.初始化时: int i =1;Integer
2016-11-07 11:34:10
258
原创 Android Get&Post方式区别与选择
先说结论: 1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式; 2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;get是从服务器上获取数据,post是向服务器传送数据。get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP pos
2016-11-07 10:08:37
402
转载 Java断言:assert
编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设 可以将断言看作是异常处理的一种高级形式 断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真 可以在任何时候启用和禁用断言验证,因此可以在测试时启用断言而在部署时禁用断言。同样,程序投入运行后,最终用户在遇到问题时可以重新起用断言。 使用断言可以创建更稳定,品质更好且易于除错的代码
2016-11-05 19:26:42
348
原创 设计模式:java单例模式 懒汉&饿汉
单例模式的懒汉饿汉区别就是是否在程序一开始就创建单例懒汉:很懒,所以一开始不创建单例,等到需要用到的时候才创建单例,用时间换空间。注意:懒汉单例是线程不安全的,如果有两个线程,我们称它们为线程1和线程2,在同一时间调用getInstance()方法,如果线程1先进入if块,然后线程2进行控制,那么就会有两个实例被创建。 所以我们需要使用synchronize关键字//懒汉式单例模式 pub
2016-11-05 16:35:08
503
原创 AndrewNg机器学习第五周作业:多输出神经网路最后输出结果含义
在做第五周的作业的时候产生了一个疑问: 第五周作业一开始是先训练一个三层神经网络的theta参数。5000个样本,400个features输入一个神经网络层,最后输出层有10个神经元,最后输出的a3维度是10*5000,因为一开始已经初始化了theta并已知正确的y输出,最后输出的a3矩阵是 这张照片对应的y输出是 10 10 10 10 10 10 ··· (这个
2016-11-05 12:45:44
4863
转载 AndrewNg机器学习第五周-神经网络的学习 Neural Networks learning
转自:http://www.cnblogs.com/python27/p/MachineLearningWeek05.html这一章可能是Andrew Ng讲得最不清楚的一章,为什么这么说呢?这一章主要讲后向传播(Backpropagration, BP)算法,Ng花了一大半的时间在讲如何计算误差项δ δ,如何计算Δ Δ的矩阵,以及如何用Matlab去实现后向传播,然而最关键的问题——为什么要
2016-11-04 20:39:01
1330
原创 虚拟存储
覆盖:应用程序手动把需要的指令和数据保存在内存中交换:OS自动把暂时不能执行的程序保存到外存中虚拟存储:在有限的内存中,以页为单位自动装入更多更大的程序(依然在内存中)覆盖简单来说就是一个程序有多个部分,但是在程序运行过程中不可能所有部分都同时需要得到运行,所以我们就根据程序各部分的调用关系,只有当某一部分需要运行时才把它加载到内存中去。 缺点:对程序员的开发难度特别大 程序执行时间也
2016-11-01 20:07:50
443
原创 AndrewNg机器学习第四周作业:关于使用逻辑回归、神经网络训练数据并应用之的心得
ex3的作业是根据已有的数据集 (20*20像素的图片,每个像素是一个feature,总共400个features,400个features作为输入X,数据集已经包含输出的y,代表这是什么数字),去识别手写数字。首先是使用逻辑回归方法来分类10个数字(分类问题)。一、逻辑回归 参数theta的训练与预测一开始的theta矩阵是ones创建的,构建逻辑回归的cost Function和gradi
2016-10-30 21:57:15
2199
原创 rxJava&rxAndroid-进阶篇
暂时没时间把rxJava&rxAndroid的进阶内容全部整理完,先整理一部分附上博客链接: http://blog.youkuaiyun.com/wds1181977/article/details/51554170注意,下文说的Subscriber 就是基础篇里面讲的Observer,因为在rxJava的源码里面,无论你使用Observer还是Subscriber 最后都会被转换成Subscriber 来
2016-10-28 20:33:42
458
原创 Andoird多线程基础:JavaThread & Handler & AsyncTask
在android开发中我们经常会遇到一些耗时操作,比如,打开一个Activity后,从本地数据库读入数据等:一、JavaThread我们可以使用Java自带的Thread或者继承Runnable来实现新开一个线程来执行这些耗时操作。但是这样有一个问题,就是我们执行这些耗时操作之后往往要对界面上的View进行更新,但是我们在这些新开的线程当中是无法对View进行直接操作的(因为View的更新只能在an
2016-10-27 10:30:59
441
转载 rxJava&rxAndroid-基础篇
整理自博客 :http://blog.chengdazhi.com/index.php/140一、Observable和ObserverRxJava最核心的东西就是Observable和Observer。Observable 被观察者,会发出数据Observer 观察者,通过订阅Observable来进行获取Observable的数据。Observable有2种初始化方式:方式1:使用Obse
2016-10-25 21:05:34
327
转载 Java泛型基础
整理自:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html一、为何要使用泛型public class GenericTest { public static void main(String[] args) { List list = new ArrayList(); list.add("qqyumidi");
2016-10-23 17:13:19
257
原创 设计模式:java策略模式
相关的资料网上很多,我这里自己总结一下。 策略模式就是为了达到一个目标,可以有多种方法(即多种策略)采用,为了减少类与类之间的耦合,所以采用如下措施:设置一个接口,interface Strategy,里面有未实现的方法doThings()StrategyA 继承 Strategy,StrategyB 也继承 Strategy,这两个具体类分别实现doThings()方法,注意这两个类里面的d
2016-10-21 13:38:15
231
原创 AndrewNg机器学习第三周作业:关于验证自己得出的Hypothesis的准确度
ex2中的题目,使用自带的GradObj方法得出使得cost functionz最小的theta值之后,要对这个得出的假设函数进行评估,判断原有的训练集对这个假设函数的拟合情况p=sigmoid(X*theta);p=p>0.5;fprintf('Train Accuracy: %f\n', mean(double(p == y)) * 100);注意这里的>0.5使得原来p中[ 0.532
2016-10-17 10:46:20
893
原创 贪心算法
简而言之就是:把一个大问题分成若干小问题,然后对若干个小问题进行求解,我们只考虑对每个小问题求解时要达到最优解,不考虑整体问题的最优解。 但是这里有一个问题,我们在使用贪心算法解决问题之前,需要证明整个问题的最优解一定由在贪心策略中存在的子问题的最优解得来的。 这个证明是关键。 其他若干实例以后添加。
2016-10-13 15:46:52
366
原创 andorid设计模式系列二:andorid中的MVP模式(上)
整理自:http://kaedea.com/2015/10/11/android-mvp-pattern/前面在设计模式(1):andorid中的MVC模式,我们讲到了MVC模式的问题,所以自然引出了我们今天的主角:MVP模式MVP优点:分离了视图逻辑和业务逻辑,降低了耦合Activity 只处理生命周期的任务,代码变得更加简洁视图逻辑和业务逻辑分别抽象到了 View 和 Presenter
2016-10-12 18:10:36
293
原创 android设计模式系列一:andorid中的MVC模式
在安卓中有常用的2种设计模式,一种是MVC,一种是MVP,我们先介绍MVC 简单概括来说,M(Model)V(View)C(Controller)中的一一对应关系如下:M(Model)——对应那些JavaBean类,存储实例数据V(View)——对应Activity的界面显示C(Controller)——业务逻辑,像登录注册这些操作但是我们在实际做项目的过程中常常把一些业务逻辑也写在Act
2016-10-12 13:16:13
275
原创 Java多线程(3):使用Condition中的await、signal进行线程间协作
详情见《Java语言程序设计-进阶篇》P238使用场景: 使用condition可以实现线程协作。取款线程发现账户余额不足,先停止自己的线程,等待存款线程存入钱后再叫醒该取款线程重新取钱。编码流程:从ReentrantLock对象获得Condition对象Lock lock=new ReentrantLock();Condition condition=lock.newCondition();一
2016-10-09 18:47:01
2549
转载 Java 多线程(2):ReentrantLock以及lock()、lockInterruptibly()之间的区别
请尊重作者劳动成果,转载请标明原文链接: http://www.cnblogs.com/dolphin0520/p/3923167.html 在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。 也许有朋友会问,
2016-10-09 17:15:38
614
转载 Java 多线程(1): synchronized关键字详解
整理自博客:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html 多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。 同步机制可以使用synchronized关键字实现。 当synchronized关键字修饰一个方法的时候,该方法
2016-10-08 17:10:55
236
原创 使用addView方法时,如何保持已有动态控件位置不被改变
现在出现这么一个问题,界面上原来有一个按钮,但是它的位置被改变了,接下来,我又使用了addView方法,结果原来那个被改变了的按钮又回到了原来的位置!!! 网上找了一下,发现这个网址: http://blog.youkuaiyun.com/victoryckl/article/details/6853826
2015-08-26 17:49:23
440
转载 android执行移动动画后按钮点击错位问题解决
问题描述:一个按钮执行一个移动动画后,无法点击新的位置,点击原来的位置竟然有效果。 解决方案如下:public void slideview(final float p1, final float p2) { TranslateAnimation animation = new TranslateAnimation(p1, p2, 0, 0); animation.setInter
2015-08-26 17:20:17
3045
原创 Fragment实现onTouchEvent事件监听
http://blog.youkuaiyun.com/sweetvvck/article/details/38409785里面有介绍, 但是有时候会出现java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 只要把public class Main
2015-08-11 10:07:57
4658
2
原创 安卓设备适配终极杀器-谷歌百分比布局库的使用
昨天一直在找有关安卓设备适配的问题,众所周知,因为谷歌的政策,所以安卓设备的碎片化非常严重,主流的屏幕尺寸有好几种,就算是相同的屏幕尺寸,还有不同的分辨率,况且就算有了相同的分辨率,可能屏幕的长宽比还不一样,所以这就给我们适配安卓设备造成了极大的麻烦,之前谷歌推荐布局控件的长宽单位用dp比较适合,但是经过试验,dp这个单位对于同一物理尺寸不同分辨率的情况的确可以适配,但是一旦物理尺寸发生变化,UI界
2015-08-01 10:18:36
582
原创 android 9-Patch图片右边下边效果
显然,左边和上边表示的是拉伸的范围,右边和下边的线是可选的,在其他博客上看到这样的定义:右边的黑色线代表内容绘制的垂直区域,下边的黑色线代表内容绘制的水平区域。 后来自己试验了一下,发现右边和下边的黑线并不一定是必须的,只有在该图片是用作背景图片时才有其用处,比如:<TextView android:layout_width="wrap_content" android:layout_h
2015-07-30 16:15:21
1204
3
原创 android在指定区域监听滑动事件
首先,要监听滑动事件,要有这么几行代码:GestureDetector gestureDetector=new GestureDetector(this);然后要求继承GestureDetector.OnGestureListener这个接口,还要求实现下列方法: @Override public boolean onDown(MotionEvent e) { return
2015-07-23 20:48:53
2981
原创 android-自定义View(一)
android自定义View分为下列几种形式: 一、系统控件重新组合,实现特定功能这一类又可以分为两类: 1、要求复用 这一类首先就是要把一些这组合需要用到的控件,将其封装到一个布局xml布局文件中。: 例:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.
2015-07-18 14:44:09
342
原创 Bitmap、Drawable的使用和转换
Drawable可以认为是资源文件的载体,Bitmap就是具体的一个外部的文件(这样的理解肯定是有问题的,暂时先这么理解)。我们这里讲一下Drawable和Bitmap的转化:1、Drawable转换成BitmapDrawable d=getResources().getDrawable(R.drawable.scorll_page_1); BitmapDrawable m= (Bi
2015-07-11 12:10:16
468
转载 多态理解
父类: public class A{ public void a(){ System.out.println(“a”); } } 子类1: public class A1 extends A{ public void a(){ System.out.println(“a1”); } } 子类2: public class A2 extends A{ public voi
2015-07-09 17:20:00
491
原创 android使用PHP上传图片到服务器
PHP端代码<?php $response=array();// $target = "./upload/";// $target_path =basename($_FILES['uploadedfile']['name']);// $another_path = $target . basename($_FILES['anotherfile']['name']);
2015-07-06 15:45:35
1325
原创 点击listview中的imageview实现拍照然后显示
最近做了一个app,实现的功能是一个activity中有一个包含多个imageview的gridview,如图: 要实现的功能是点击图中的图片就会开启系统自带的照相机拍照,然后再在这个位置显示出来。完成这个功能分为几步: 1、自定义一个BaseAdapter,在getview()中获取imageview控件,然后给它加上监听器,用于监听点击事件。final ImageView image=
2015-07-04 17:34:36
1544
1
转载 自定义GridView/ListView数据源
在开发中,我们常常会遇到比较复杂的GridView/ListView的布局,重新实现BaseAdapter不但能帮助我们实现我们想要的布局效果,并且在绑定大数据量时也不会感觉有卡壳现象。记得以前用一个ListView直接去绑定手机内的联系人Cursor(一百多号人),滑动的时候就会有卡的感觉。今天决定写个Demo是因为在项目中可能会要实现这样的一个效果:一个GridView中绑定4个ImageBut
2015-06-27 19:09:34
476
原创 listview相关TIPs
1.mListView.setOnItemClickListener(new OnItemClickListener() { mListView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterVi
2015-06-22 21:14:32
383
原创 Listview发生在我身上的编程错误
1.SimpleAdapter simpleAdapter=new SimpleAdapter(this,content,R.layout.list_layout,new String[]{"icon","title","str"},new int[]{R.id.image,R.id.title,R.id.str}); 这里面的new String[]{“icon”,”title”,”str”
2015-06-22 21:08:12
328
原创 getview参数解释
写自定义Adapter时要重写getview方法 public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.lay
2015-06-17 12:37:27
2511
转载 setBackgroundDrawable跟setBackgroundResource的区别
setBackgroundDrawable和setBackgroundResource的区别 很多网友不知道View类提供的setBackgroundDrawable和setBackgroundResource的区别是什么,同时Android View类很多子类比如TextView、ImageView中都有这些方法,同时还有一些类似setImageDrawable、setImageBitmap和s
2015-06-13 10:12:49
391
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人