自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 收藏
  • 关注

转载 BitMap的理解(转载)

Bit-map的基本思想就是用一个bit位来标记某个元素对应的Value,而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。(PS:划重点节省存储空间)假设有这样一个需求:在20亿个随机整数中找出某个数m是否存在其中,并假设32位操作系统,4G内存在Java中,int占4字节,1字节=8位(1 byte = 8 bit)如果每个数字用int存储,...

2020-04-09 07:32:50 1784 1

原创 局部内部类为什么只能访问final局部变量?

最近读《Effective Java》,其中描述了嵌套类的几种类别:1.静态成员类。他只是位于某个内里而已,与外部类没有一毛钱关系。2.非静态成员类。相当于外部类的成员,使用依赖于外部类的实例。3.匿名类。如:Comparator,Runnable,Thread等。4.局部类。位于方法内部,相当于方法的局部变量。比较难理解的是局部类:1.不能有public、private、protected修饰,...

2018-05-23 23:40:57 2248 3

原创 mac安装mysql

第一步:从官网下载MySQL安装文件,官网下载地址https://dev.mysql.com/downloads/mysql/选择红框中的dmg文件下载。第二步:安装数据库,一直同意下一步就行。然后进入偏好设置,启动MySQL,如下图:点击start MySQL server,启动成功以后如下:第三步:重置密码,进入MySQL进入MySQL的安装目录:/usr/

2017-06-03 20:47:04 15151

转载 eclipse导入myeclipse项目

1打开eclipse,点击空白处,右键可以看到import>general>existing projects into workspace>next>选择你的myeclipse web项目,最后finish.2如果有错,大概是出现的jdk、或编码错误、或jar包问题,改正完毕后;打开widnow>show view>nagitgor>找到你的导入项目>.s

2017-05-21 23:24:21 664

转载 使用OKHttp上传、下载文件记录进度

转载地址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0904/3416.html为了日后的重用,我将其封装为一个OkHttp的扩展库,暂时取名为CoreProgress。要实现进度的监听,需要使用到OkHttp的依赖包Okio里的两个类,一个是Source,一个是Sink,至于Okio的东西,这里也不多

2017-05-13 11:20:39 3986

转载 字符串匹配算法

记录两个字符串匹配算法:KMP和BM算法。转载地址:http://www.ruanyifeng.com/blog/2013/05/Knuth%E2%80%93Morris%E2%80%93Pratt_algorithm.html        http://www.ruanyifeng.com/blog/2013/05/boyer-moore_string_search_algorithm

2017-05-12 00:04:47 664

原创 sql中查询类型为int的字段,返回null的异常

sql中查询类型为int的字段,返回null的异常项目中用mybatis3.x,用sql查询某个表类型为int的字段,那个表是空表,没有数据,结果抛异常了,原因是在对象中的属性为int,空表时,sql查询出来的是NULL,结果赋值时抛异常了。org.apache.ibatis.binding.BindingException: Mapper method 'getSort'

2017-03-30 18:46:58 1519

原创 html中点击a标签获取text

Title function work(target) { //e.preventDefault(); alert($(target).text()); } function notWork(target) { //e.preventDefault(); alert($(target).text(

2017-01-16 09:59:42 18268 1

转载 简单理解Socket

原文地址:http://www.cnblogs.com/dolphinX/p/3460545.htmlTCP/IP要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,定义了主机如何连入因特网及数据如何再它们之间传输的标准,从字面意思来看

2017-01-10 17:22:38 406

转载 http Cookie与Session的讲解

http 之session和cookiehttp://www.cnblogs.com/ForEverKissing/archive/2008/05/23/1205503.htmlSession简介摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术。本文将详细讨论session的工作机制并

2017-01-10 00:16:10 476

转载 JS怎么把字符串数组转换成整型数组

http://blog.csdn.net/youmoo/article/details/8051579今天在学习highcharts时,遇到了一个把字符串数组转换为整形数组的问题,拿在这里讨论一下:比如有一个字符串:[javascript] view plain copyvar dataStr="1,2,3,4,5";  

2016-12-23 14:05:47 11987

转载 创建mavenweb项目

一.创建项目1.Eclipse中用Maven创建项目上图中Next 2.继续Next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Packaged是默认创建一个包,不写也可以 5.创建好项目后,目录如下:至此,项目已经创建完毕,下边

2016-12-13 15:58:47 583

原创 mysql-5.7.17-winx64的安装配置

第一步:下载mysql-5.7.17-winx64解压版本:http://dev.mysql.com/downloads/mysql/第二步:解压到安装目录,如:C:\myprogram\mysql-5.7.17-winx64第三步:设置环境变量 操作如下:    1)右键单击我的电脑->属性->高级系统设置(高级)->环境变量      点击系统变量下的新建按钮

2016-12-13 13:26:29 55673 4

转载 几道经典的SQL笔试题目(有答案)

几道经典的SQL笔试题目(有答案) (1)表名:购物信息购物人      商品名称     数量A            甲          2B            乙          4C            丙          1A            丁          2B            丙          5……(其他用户

2016-10-17 22:35:48 6803 1

原创 dpi 、dip 、分辨率、屏幕尺寸、px、density、sp的理解

px: 是屏幕的像素点,也就是我们常说的像素dp: 一个基于density的抽象单位,如果一个160dpi的屏幕,1dp=1pxdip: 等同于dp。Density independent pixels ,设备无关像素。sp: 同dp相似,但还会根据用户的字体大小偏好来缩放(建议使用sp作为文本的单位,其它用dip)dpi: dots per inch , 直接来说就是一英寸多

2016-09-26 21:15:38 907

转载 android进程和线程

https://developer.android.com/guide/components/processes-and-threads.html#Processes进程和线程当某个应用组件启动且该应用没有运行其他任何组件时,Android 系统会使用单个执行线程为应用启动新的 Linux 进程。默认情况下,同一应用的所有组件在相同的进程和线程(称为“主”线程)中运行。 如果某个应

2016-09-18 15:59:06 360

转载 动态规划之01背包问题(最易理解的讲解)

转载地址:http://blog.csdn.net/mu399/article/details/772281001背包问题,是用来介绍动态规划算法最经典的例子,网上关于01背包问题的讲解也很多,我写这篇文章力争做到用最简单的方式,最少的公式把01背包问题讲解透彻。01背包的状态转换方程 f[i,j] = Max{ f[i-1,j-Wi]+Pi( j >= Wi ),  f[i-1,

2016-09-13 16:05:16 3797

转载 Integer的自动拆装箱的陷阱

Integer的自动拆装箱的陷阱(整型数-128到127的值比较问题):1、先看下面的例子:[java] view plain copypackage integerdemo;     public class IntegerDemo {          public static void main(String[] ar

2016-09-01 23:53:05 423

转载 稳定排序和不稳定排序

这几天笔试了好几次了,连续碰到一个关于常见排序算法稳定性判别的问题,往往还是多选,对于我以及和我一样拿不准的同学可不是一个能轻易下结论的题目,当然如果你笔试之前已经记住了数据结构书上哪些是稳定的,哪些不是稳定的,做起来应该可以轻松搞定。本文是针对老是记不住这个或者想真正明白到底为什么是稳定或者不稳定的人准备的。      首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前2个相

2016-08-29 16:33:15 489

转载 解析XML总结(SAX、Pull、Dom三种方式)

http://blog.csdn.net/cangchen/article/details/44034799http://www.cnblogs.com/JerryWang1991/archive/2012/02/24/2365507.html

2016-08-23 14:56:39 403

原创 Java中TreeSet与HashSet的对比

我们知道TreeSet与HashSet都实现了Set,Set的特性就是不允许重复的元素。《thinking in Java》中说set必须定义equals方法确保对象的唯一性,但是经过测试貌似不是这样,不知道是不是java1.5以后版本改变后造成的。下面就从唯一性展开问题,先看例子:先来看HashSet:package testsortset;import java.util.Hash

2016-08-10 22:14:27 2060

转载 Android系统进程Zygote启动过程的源代码分析(老罗的作品)

http://blog.csdn.net/luoshengyang/article/details/6768304 在Android系统中,所有的应用程序进程以及系统服务进程SystemServer都是由Zygote进程孕育(fork)出来的,这也许就是为什么要把它称为Zygote(受精卵)的原因吧。由于Zygote进程在Android系统中有着如此重要的地位,本文将详细分析它的启动过

2016-08-04 11:13:55 1478

转载 TCP与UDP的区别

转载自:http://blog.csdn.net/yipiankongbai/article/details/24435977TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。UDP(User Datagram Protocol)        UDP不提供复杂的控制机制,利用IP提供面

2016-07-29 10:46:51 375

转载 TCP协议中的三次握手和四次挥手

建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示:先来看看如何建立连接的。首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建立了。那如何断开连接呢?简单的过程如下:

2016-07-29 10:39:41 275

转载 Android Volley完全解析(郭林老师作品)

Android Volley完全解析(一),初识Volley的基本用法转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/174820951. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系

2016-07-26 21:11:49 1990

转载 Java ConcurrentModificationException异常原因和解决方法

文章参考自:http://www.cnblogs.com/dolphin0520/p/3933551.html 对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面我们就来讨论以下这个异常出现的原因以及解决办法。  以下是本文目录大纲:  一.Concurr

2016-07-22 21:47:00 495

原创 LinkedBlockingQueue的offer与put的区别

首先,看一下LinkedBlockingQueue的put方法的源码:/** * Inserts the specified element at the tail of this queue, waiting if * necessary for space to become available. * * @throws InterruptedExc

2016-07-22 19:57:23 5785

转载 sun.misc.unsafe类的使用

本文转载自:http://blog.csdn.net/fenglibing/article/details/17138079另一个值得看文章:http://aswang.iteye.com/blog/1741871    Java是一个安全的开发工具,它阻止开发人员犯很多低级的错误,而大部份的错误都是基于内存管理方面的。如果你想搞破坏,可以使用Unsafe这个类。这个类是属于sun

2016-07-20 21:38:28 442

原创 ThreadPoolExecutor源码解析(基于Java1.8)

第一部分:ThreadPoolExecutor的继承结构根据上图可以知道,ThreadPoolExecutor是继承的AbstractExecutorService(抽象类)。再来看一下AbstractExecutorService的结构可以发现,AbstractExecutorService实现了ExecutorService,并且ExecutorService继承Executor接

2016-07-19 17:51:32 4447 1

转载 java活动对象学习总结

本文参考自:http://blog.csdn.net/zcc_0015/article/details/15502813一、活动对象定义:      活动对象工作在对象级别而不像其他设计模式工作在对象继承层级关系中。它将方法的调用和其实际的执行解耦,方法的执行位于对象本身的控制线程中,因而也不会阻塞调用者。总的说来,活动对象模式有6个元素:1.代理。以公共方法的方式向客户对

2016-07-18 21:26:59 1576

原创 Android 内存泄漏总结

Java中的内存泄漏java内存泄漏大家都不陌生了,简单粗俗的讲,就是该被释放的对象没有释放,一直被某个或某些实例所持有却不再被使用导致 GC 不能回收。在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条件,这些对象就可以判定为Ja

2016-07-15 13:51:49 2188 1

原创 代理模式与装饰模式的理解

参考文章:http://blog.csdn.net/hust_is_lcd/article/details/7884320http://www.cnblogs.com/jaredlam/archive/2011/11/08/2241089.htmlhttp://blog.csdn.net/hitprince/article/details/6794748

2016-07-12 23:56:25 371

转载 Context 都没弄明白,还怎么做 Android 开发?

原文:http://android.jobbole.com/83598/Activity mActivity =new Activity()作为Android开发者,不知道你有没有思考过这个问题,Activity可以new吗?Android的应用程序开发采用JAVA语言,Activity本质上也是一个对象,那上面的写法有什么问题呢?估计很多人说不清道不明。Android程序不像

2016-07-07 20:17:07 621

原创 java之clone方法的使用

首先看一下jdk中对clone方法的解释:大概意思是说:返回一个要克隆对象的副本,克隆的类型依赖被克隆对象,换句话说:克隆后的对象类型与被克隆对象的类型相同。一、简单用法只需要在需要clone的对象上实现(implements)Cloneable接口,然后再在类中加上clone方法,在方法中只需要调用super.clone(),根据自己的需要实现即可。public cl

2016-06-30 20:03:50 17028 4

原创 java8新特性--类型推断的理解(泛化目标类型推断)

简单理解泛型泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。通俗点将就是“类型的变量”。这种类型变量可以用在类、接口和方法的创建中。理解Java泛型最简单的方法是把它看成一种便捷语法,能节省你某些Java类型转换(casting)上的操作:List box = new ArrayList();box.add(new A

2016-06-30 15:30:44 1130

转载 java之详解匿名内部类

为什么要使用内部类?在《Think in java》中有这样一句话:一般来说,内部类继承自某个类或实现某个接口,内部类的代码操作创建它的外围类的对象,所以可以认为内部类提供了某种进入其外围类的窗口。使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。使用内部类最大的优点就在于它能够非常好的解决多重继承的问题。

2016-06-25 19:30:21 383

原创 android开发之HttpUrlConnection与OkHttp实现文件上传下载

首先来一点题外话:Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient。尽管Google在大部分安卓版本中推荐使用HttpURLConnection,但是这个类相比HttpClient实在是太难用,太弱爆了。OkHttp是一个相对成熟的解决方案,据说Android4.4的源码中可以看到HttpURLConnection已经替换成OkH

2016-06-24 22:16:40 5272 3

转载 如何在Android Studio项目中导入开源库?

参考两篇博客:http://www.csdn.net/article/1970-01-01/2824100http://blog.isming.me/2014/12/12/import-library-to-android-studio/前言同 Eclipse中的项目一样,gradle/android studio 构建也可以有 module,将 moudl

2016-06-20 11:29:26 842

原创 Timer和handler的使用

Timer的使用很简单:查看源码,可以看出来TimerTask是一个实现Runnable的任务而已;而Timer也就是继承Thread实现的线程控制。但是如上图的代码,在三星手机(操作系统为4.3)上运行没有效果(原因还没有找到,有知道的朋友可以告诉我。谢谢),在nexus(5.0)、小米(6.0)能实现希望的效果,即循环每1s发送消息。另外,在三星手机上将时间改为3000ms,则

2016-06-16 20:05:32 683

原创 【Java实现】剑指offer52--构建乘积数组

题目: 给定一个数组 A[0,1,...,n-1 ],请构建一个数组 B[0,1,...,n-1]     。其中 B 中的元素 B[i]=A[0]∗ A[1] ∗...∗ A[i−1]∗A[i+1] ∗ ... ∗A[n−1]                              。不能使用除法。                            直观思路: 计算每一

2016-06-08 13:08:43 1816

空空如也

空空如也

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

TA关注的人

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