自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

比较喜欢、笑的博客专栏

互联网、移动互联网

  • 博客(100)
  • 资源 (17)
  • 收藏
  • 关注

原创 C语言入门(九)循环语句和循环控制

循环语句和循环控制 前言:Turbo C 2.0提供三种基本的循环语句: for语句、while语句和do-while语句。一、循环语句(一)、for循环 它的一般形式为:for(;;)语句;初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分

2016-07-12 10:07:42 8134 2

原创 C语言入门(八)条件语句

条件语句 前言一个表达式的返回值都可以用来判断真假,除非没有任何返回值的void型和返回无法判断真假的结构。当表达式的值不等于0时,它就是“真”,否则就是假。一样个表达式可以包含其他表达式和运算符,并且基于整个表达式的运算结果可以得到一个真/假的条件值。因此,当一个表达式在程序中被用于检验其真/假的值时,就称为一个条件。一、if语句if(表达式) 语句1;如果表达式的值

2016-07-12 09:56:08 14090

原创 C语言入门(七)编写第一个C语言程序

编写第一个C语言程序 前面几节介绍了常量和变量、运算符、表达式和语句的概念,对它们的使用有了一个大概的了解。也许刚学程序的人会觉得有些枯燥,下面我们就来编写第一个C语言程序。#define PI 3.1416main(){float Radius,Area; scanf(%f,&Radius); /*输入半径的值*/Area=PI*Radius*Radius; prin

2016-07-12 09:43:38 8682

原创 C语言入门(六)表达式和语句

表达式和语句 一、表达式前面已经提到过表达式,相信大家对表达式也有了一个初步的认识,它是由常量、变量、运算符组合(到以后讲函数时,函数也可以是组成表达式的元素),计算以后返回一个结果值。表达式的结束标志是分号(;),C语言中所有的语句和声明都是用分号结束,在分号出现之前,语句是不完整的。例如:1+2;Counter/3+5;Height*Width;表达

2016-07-11 15:31:52 8344

原创 C语言入门(五) 运算符

运算符前言:无论是加减乘除还是大于小于,都需要用到运算符,在C语言中的运算符和我们平时用的基本上都差不多。运算符包括赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符。大多数运算符都是二目运算符,即运算符位于两个表达式之间。单目运算符的意思是运算符作用于单个表达式。(具体什么是表达式下一节再说)一、赋值运算符赋值语句的作用是

2016-07-11 15:29:00 7090 2

原创 C语言入门(四)变量和常量

变量和常量 前言:编译环境设置好以后,就可以正式学习C语言了。一、变量(一)、变量类型和表示方法1.什么是变量?一句话,变量是存储数据的值的空间。由于数值的类型有多种,有整数、小数(浮点数)、字符等等,那么对应的变量就有整型变量、浮点型变量、字符型变量。变量还有其他的具体分类。整型变量还可具体分为无符号型、长整型和短整型。浮点型也可分为单精度型、双精度型和长双精度型。此外还

2016-07-11 15:25:26 7267

原创 C语言入门(三)菜单设置

本菜单设置有关连接的选择项,它有以下内容: Map file menu 选择是否产生.MAP文件。Initialize segments  是否在连接时初始化没有初始化的段。Devault libraries 是否在连接其它编译程序产生的目标文件时去寻找其缺省库。Graphics library 是否连接graphics库中的函数。Warn duplicate symbols

2016-07-11 15:22:21 10692 1

原创 C语言入门(二)主菜单操作

(一)、主菜单 在Turbo C 2.0主屏幕顶上一行, 显示下列内容: File Edit Run Compile Project Options Debug Break/watch 除Edit外, 其它各项均有子菜单, 只要用Alt加上某项中第一个字母(即大写字母), 就可进入该项的子菜单中。1、File(文件)菜单 按Alt+F可进入File菜单, 该菜单包括以下内容: 

2016-07-11 15:20:38 13575

原创 C语言入门(一)初识C

一、C语言的产生与发展C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在UNIX操作系统的 DEC PDP-11 计算机上使用。它由早期的编程语言BCPL (Basic Combind Programming Language)发展演变而来。在1970年,AT&T贝尔实验室的Ken hompson根据BCPL语言设计出较先进的并取名为B的语言,最后导致了C语言的问世。 

2016-07-11 14:53:13 2546 1

原创 浅谈Java设计模式(二十三)解释器模式(Interpreter)

前言:解释器模式是我们暂时的最后一讲,一般主要应用在OOP开发中的编译器的开发中,所以适用面比较窄。Context类是一个上下文环境类,Plus和Minus分别是用来计算的实现,代码如下:public interface Expression { public int interpret(Context context); }public class Plus

2016-07-11 11:33:59 7409

原创 浅谈Java设计模式(二十二)中介者模式(Mediator)

前言:中介者模式也是用来降低类类之间的耦合的,因为如果类类之间有依赖关系的话,不利于功能的拓展和维护,因为只要修改一个对象,其它关联的对象都得进行修改。如果使用中介者模式,只需关心和Mediator类的关系,具体类类之间的关系及调度交给Mediator就行,这有点像spring容器的作用。先看看图:User类统一接口,User1和User2分别是不同的对象,二者之间有关联,如果不采用中

2016-07-11 11:29:11 6816

原创 浅谈Java设计模式(二十一)访问者模式(Visitor)

前言:访问者模式把数据结构和作用于结构上的操作解耦合,使得操作集合可相对自由地演化。访问者模式适用于数据结构相对稳定算法又易变化的系统。因为访问者模式使得算法操作增加变得容易。若系统数据结构对象易于变化,经常有新的数据对象增加进来,则不适合使用访问者模式。访问者模式的优点是增加操作很容易,因为增加操作意味着增加新的访问者。访问者模式将有关行为集中到一个访问者对象中,其改变不影响系统数据结构

2016-07-11 11:13:08 6928

原创 浅谈Java设计模式(二十)状态模式(State)

6

2016-07-11 11:05:14 6763

原创 浅谈Java设计模式(十九)备忘录模式(Memento)

前言:主要目的是保存一个对象的某个状态,以便在适当的时候恢复对象,个人觉得叫备份模式更形象些,通俗的讲下:假设有原始类A,A中有各种属性,A可以决定需要备份的属性,备忘录类B是用来存储A的一些内部状态,类C呢,就是一个用来存储备忘录的,且只能存储,不能修改等操作。做个图来分析一下:Original类是原始类,里面有需要保存的属性value及创建一个备忘录类,用来保存value值。M

2016-07-11 10:58:16 7730

原创 浅谈Java设计模式(十八)命令模式(Command)

前言:命令模式很好理解,举个例子,司令员下令让士兵去干件事情,从整个事情的角度来考虑,司令员的作用是,发出口令,口令经过传递,传到了士兵耳朵里,士兵去执行。这个过程好在,三者相互解耦,任何一方都不用去依赖其他人,只需要做好自己的事儿就行,司令员要的是结果,不会去关注到底士兵是怎么实现的。我们看看关系图:Invoker是调用者(司令员),Receiver是被调用者(士兵),MyCom

2016-07-11 10:52:17 6851

原创 浅谈Java设计模式(十七)责任链模式(Chain of Responsibility)

前言:接下来我们将要谈谈责任链模式,有多个对象,每个对象持有对下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求。但是发出者并不清楚到底最终那个对象会处理该请求,所以,责任链模式可以实现,在隐瞒客户端的情况下,对系统进行动态的调整。先看看关系图:Abstracthandler类提供了get和set方法,方便MyHandle类设置和修改引用对象,My

2016-07-11 10:42:33 8081

原创 浅谈Java设计模式(十六)迭代子模式(Iterator)

前言:顾名思义,迭代器模式就是顺序访问聚集中的对象,一般来说,集合中非常常见,如果对集合类比较熟悉的话,理解本模式会十分轻松。这句话包含两层意思:一是需要遍历的对象,即聚集对象,二是迭代器对象,用于对聚集对象进行遍历访问。我们看下关系图:这个思路和我们常用的一模一样,MyCollection中定义了集合的一些操作,MyIterator中定义了一系列迭代操作,且持有Collect

2016-07-11 10:35:20 7017

原创 浅谈Java设计模式(十五)观察者模式(Observer)

前言:包括这个模式在内的接下来的四个模式,都是类和类之间的关系,不涉及到继承,学的时候应该 记得归纳,记得本文最开始的那个图。观察者模式很好理解,类似于邮件订阅和RSS订阅,当我们浏览一些博客或wiki时,经常会看到RSS图标,就这的意思是,当你订阅了该文章,如果后续有更新,会及时通知你。其实,简单来讲就一句话:当一个对象变化时,其它依赖该对象的对象都会收到通知,并且随着变化!对象之间是一种一

2016-07-11 10:25:25 10050 9

原创 浅谈Java设计模式(十四)模板方法模式(Template Method)

前言:解释一下模板方法模式,就是指:一个抽象类中,有一个主方法,再定义1...n个方法,可以是抽象的,也可以是实际的方法,定义一个类,继承该抽象类,重写抽象方法,通过调用抽象类,实现对子类的调用,先看个关系图:就是在AbstractCalculator类中定义一个主方法calculate,calculate()调用spilt()等,Plus和Minus分别继承AbstractCal

2016-07-11 10:17:28 6990

原创 浅谈Java设计模式(十三)策略模式(strategy)

前言:策略模式定义了一系列算法,并将每个算法封装起来,使他们可以相互替换,且算法的变化不会影响到使用算法的客户。需要设计一个接口,为一系列实现类提供统一的方法,多个实现类实现该接口,设计一个抽象类(可有可无,属于辅助类),提供辅助函数,关系图如下:图中ICalculator提供同意的方法,AbstractCalculator是辅助类,提供辅助方法,接下来,依次实现下每个类。

2016-07-11 10:09:02 6805

原创 浅谈Java设计模式(十二)享元模式(Flyweight)

前言:享元模式的主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。FlyWeightFactory负责创建和管理享元单元,当一个客户端请求时,工厂需要检查当前对象池中是否有符合条件的对象,如果有,就返回已经存在的对象,如果没有,则创建一个新对象,FlyWeight是超类。一提到共享池,我们很容易联想到Java里面的JDBC连

2016-07-11 10:02:48 4897

原创 浅谈Java设计模式(十一)组合模式(Composite)

前言:组合模式有时又叫部分-整体模式在处理类似树形结构的问题时比较方便,看看关系图:实现代码:public class TreeNode { private String name; private TreeNode parent; private Vector children = new Vector();

2016-07-11 09:54:18 6803

原创 浅谈Java设计模式(十)桥接模式(Bridge)

前言:桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化。桥接的用意是:将抽象化与实现化解耦,使得二者可以独立变化,像我们常用的JDBC桥DriverManager一样,JDBC进行连接数据库的时候,在各个数据库之间进行切换,基本不需要动太多的代码,甚至丝毫不用动,原因就是JDBC提供统一接口,每个数据库提供各自的实现,用一个叫做数据库驱动的程序来桥接就行了。我们来看看关系图:

2016-07-11 09:49:33 11331 2

原创 浅谈Java设计模式(九)外观模式(Facade)

前言:外观模式是为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度,该模式中没有涉及到接口,看下类图:(我们以一个计算机的启动过程为例):我们先看下实现类:public class CPU { public void startup(){

2016-07-08 17:25:16 6960

原创 浅谈Java设计模式(八)代理模式(Proxy)

前言:其实每个模式名称就表明了该模式的作用,代理模式就是多一个代理类出来,替原对象进行一些操作,比如我们在租房子的时候回去找中介,为什么呢?因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,此处的代理就是这个意思。再如我们有的时候打官司,我们需要请律师,因为律师在法律方面有专长,可以替我们进行操作,表达我们的想法。先来看看关系图:根据上文的阐述,代理模式就比较容

2016-07-08 17:10:07 7398

原创 浅谈Java设计模式(七)装饰模式(Decorator)

前言:顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下:Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下:public interface Sourceable { public void method();

2016-07-08 16:59:50 7170 2

原创 浅谈Java设计模式(六)适配器模式(Adapter)

前言:适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。首先,我们来看看类的适配器模式,先看类图:核心思想就是:有一个Source类,拥有一个方法,待适配,目标接口时Targetable,通过Adapter类,将Source的功能扩展到Targetable里,看

2016-07-08 16:54:31 6974

原创 浅谈Java设计模式(五)原型模式(Prototype)

前言:原型模式虽然是创建型的模式,但是与工程模式没有关系,从名字即可看出,该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。本小结会通过对象的复制,进行讲解。在Java中,复制对象是通过clone()实现的,先创建一个原型类:public class Prototype implements Cloneable { public Obj

2016-07-08 16:41:35 11637 1

原创 浅谈Java设计模式(四)建造者模式(Builder)

前言:工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性,其实建造者模式就是前面抽象工厂模式和最后的Test结合起来得到的。我们看一下代码:建造者类如下:public class Builder { private List list = new ArrayList();

2016-07-08 16:36:28 7031

原创 浅谈Java设计模式(三)单例模式(Singleton)

前言:单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。这样的模式有几个好处:1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。3、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了。(比如一个

2016-07-08 16:31:41 7438

原创 浅谈Java设计模式(二)抽象工厂模式

前言:工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问题,如何解决?就用到抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。因为抽象工厂不太好理解,我们先看看图,然后就和代码,就比较容易理解。多说无益,直接看例子:public inte

2016-07-08 16:19:29 7025

原创 Android中取消GridView & ListView默认的点击背景色

方法一:gridView.setSelector(new ColorDrawable(Color.TRANSPARENT));listView.setSelector(new ColorDrawable(Color.TRANSPARENT));在代码中初始化的时候设置其属性。方法二:<GridView android:listSelector="@androi

2016-07-06 16:10:56 13459 2

原创 浅谈Java设计模式(一)工厂模式

前言:Java中的23种常用的设计模式,相信大家也经常用,或者有所听闻!今天这一系列的设计模式文章主要针对的是初学者,大神路过,请评论区留下建议,让小弟可以跟着大神的步伐起飞!工厂模式工厂模式也分很多种:普通的工厂模式、多工厂模式、静态工厂模式!1.普通工厂模式//创建播放器接口public interface Player { public void P

2016-07-05 15:03:52 7834

原创 浅谈Java设计模式

前言:设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对

2016-07-05 14:09:48 2785

原创 AndroidStudio的基本设置

基本设置1>Android Studio编辑区域,在中部会有一条竖线。这条线是用以提醒程序员,一行的代码长度最好不要超过这条线。如果你不想显示这条线,可以这么设置。Settings --> Editor --> Appearance ,取消勾选 Show right margin (configured in Code Style options) 。2>显示行号Setti

2016-07-04 17:02:10 7312 1

原创 AndroidStudio中关于Gradle

Gradle是一个在Java构建技术世界里具有巨大突破性的构建工具。Gradle具有如下特性:1)一个像Ant一样灵活且通用的构建工具。2)一种可切换的,像Maven一样的基于约定的构建框架,却又从不约束你(约定优于配置)。3)对多项目构建的强力支持。4)对依赖管理的强力支持(基于Apache Ivy)。5)对已有的Maven和Ivy仓库有着全面的支持。6)支持可传递性的依

2016-07-01 09:25:51 8033

原创 在AndroidStudio中配置Github

为了在AndroidStudio上配置Github倒腾了很久,发现总是会遇到一些问题。最后总结出来一个比较方便的方法,完美解决问题!首先要确定是否安装了GitHub,没安装就下载安装Github国内vpn你懂得,安装好几次才成功,所以耐心安装吧!安装好后,就开始设置AndroidStudio:到设置也找到VersionControl--选择Git在框中输入你安装Github的路径。

2016-06-23 17:10:46 2982 1

原创 AndroidStudio使用指南(一)项目结构&基本功能

hello,大家好,我是比较喜欢、笑的程序员!在使用AndroidStudio前,当然是下载和安装了,这个过程很简单,就不做过多的介绍了。接下来是大家最喜欢的正文环节!今天我们是基于最新的版本(2.1.1)来介绍的。启动AndroidStudio!程序主界面!注意:目录显示方式默认是Android,其实开发中大部分使用的是Project,因为这个模式下可以看

2016-06-23 09:25:51 9442

原创 Java8部分新特性介绍

研究过一些技术论坛,总结出来Java8的一些新的特性,其中我印象最深的就是 lambda表达式,让我们代码变得简洁,可读性高。一、接口的默认方法Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法,示例如下:interface Formula { double calculate(int a); def

2016-06-22 17:25:54 8836

原创 Linux使用笔记 (一) 虚拟机运行CentOS7

Linux,相信大家都很熟悉这个词,但是不一定熟悉这个是什么。它是一个操作系统,那么什么是操作系统呢?在使用一段时间Linux后,个人感觉,它是最适合程序员的操作系统(丰富的指令、快捷的操作、以及高效的运行)。起初最先是有Unix从而演变成了Linux,Linux Torvalds是一个在合适的时间,合适的地点提出合适的思想最典型的人。1991年,Linux(发音为“Lee-nus”)是H

2016-06-22 10:34:43 7098

Kotlin实战 中文版(不完全)

Kotlin中文学习书籍,但是不完整,不过前面的基础部分是完整的可以下载阅读,CSDN现在不能提供0积分了,最低都要1积分下载。

2017-08-16

Kotlin实战(英文版)

这本书是最新的也是比较权威Kotlin,不过是全英文的,阅读需要一定的英语基础。

2017-08-16

深入探索Android热修复技术原理pdf

阿里最近开源出来的一本干货书籍

2017-07-05

React Native开发指南

本书通过丰富的示例和详细的讲解,介绍了React Native这款JavaScript框架。在React Native中利用现有的JavaScript和React知识,就可以开发和部署功能完备的、真正原生的移动应用,并同时支持iOS与Android平台

2016-10-25

AndFix使用样例

AndFix简单的使用案例

2016-07-28

AndFix工程项目

AndFix工程项目,下载解压直接作为工程添加到Eclipse,然后在你的项目引入Android工程jar

2016-07-28

高仿大众点评最新版

高仿大众点评最新版

2016-06-03

高仿京东app

高仿京东app

2016-06-03

APP-高仿去哪儿旅行界面源码

APP-高仿去哪儿旅行界面源码

2016-06-03

Android自定义选择相册图片并带自定义裁剪、旋转

自定义的选择相册中的图片并且自定义裁剪、旋转。 说明:可以用配置参数来设定选择的需求具体有(是否需要摄像头、是否需要裁剪、是否要多选、一行显示的图片张数、图片的压缩比例等)完全自定义。

2016-06-03

高仿机锋应用市场UI

高仿机锋应用市场app的UI设计源码

2016-06-03

健康养生UI源码

仿照健康养生UI设计,下载导入立即使用

2016-06-03

仿照今日头条新闻app源码

仿照今日头条app

2016-06-03

Android获取系统图片并裁剪(包括4.4以上版本)

解决了在4.4一下手机可以获取到相册图片并剪切,换到4.4以上或者5.0的手机就不行的问题。

2016-05-31

Android 5.0 sdk(android-21)

android 5.0 sdk直接下载

2016-05-31

Android线程的销毁

在Android开发中,经常会用到线程和Timer,如果没有主动关闭它们,当程序结束时,线程并没有被销毁,而是一直在后台运行着,当我们重新启动应用时,又会重新启动一个线程,周而复始,你启动应用次数越多,开启的线程数就越多,你的机器就会变得越慢。还会导致意想不到的错误

2014-08-08

Android生成各种特效Bitmap

Drawable转Bitmap、圆角图片、倒影效果等各种特效。

2014-08-08

空空如也

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

TA关注的人

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