自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

请叫我大师兄

看文章记得点个赞哟

  • 博客(53)
  • 资源 (5)
  • 收藏
  • 关注

原创 Java 集合排序---常用的2种排序方式、附代码实例(大师兄亲测)

Java API针对集合类型排序提供了两种支持:java.util.Collections.sort(java.util.List)java.util.Collections.sort(java.util.List, java.util.Comparator)第一个方法要求所排序的元素类必须实现java.lang.Comparable接口。第二个方法要求实现一个java.util.Com...

2016-08-31 19:13:52 8890 3

原创 Java 集合排序、汉字按字母表排序问题

一般Java程序里面对于字母数字开头的排序还是很OK的,但是对于汉字,也整Java排序的话,虽然也是排了顺序。但是那个顺序不是咱们的那个字母表的顺序,这个不合咱们的要求,所以还得按咱们的要求来排序才好。public interface OrderingConstants { Collator collator = Collator.getInstance(Locale.CHINA...

2016-08-31 17:18:11 3734

原创 IntelliJ IDEA(Android Studio)中如何设置使得占用C盘空间尽量少(相关核心文件和目录介绍)

关于安装了IntelliJ IDEA 编辑器后,它就会在c盘生成.IntelliJIdea2016.2类似这个的文件夹,但是这个文件目录太大,可能一个多G,甚至更多,导致c盘都快满了。这可怎么办呢。现在就来找解决方案。如上图,在c盘会出现个类似这个文件夹的东西,占空间很大,可能超过一个G。默认的下面可能会有config和system,也许还有restart三个子目录。

2016-08-31 15:43:54 11181 12

原创 在js代码拼接dom对象到页面上去的模板总结

每次在js代码里面想动态的拼个dom,然后append到页面上,都是各种麻烦,要是可以直接在jsp页面弄个隐藏的model那是很好的,用js方法里面的clone方法也是很好的,还可以给不同部分set值。为了以后简单点,我就把模板摆着,方便后面用得着的时候,复制粘贴。function fillDialog(dataArray) { var target = $("#dialogTa...

2016-08-31 11:26:30 5871 1

转载 Java数组及其内存分配

几乎所有的程序设计语言都支持数组。Java也不例外。当我们需要多个类型相同的变量的时候,就考虑定义一个数组。在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静态的,所以想要使用就必须先初始化(为数组对象的元素分配空间)。1.数组的初始化方式及其内存分配对于Java数组的初始化,有以下两种方式,这也是面试中经常考到的经典题目:静态初始

2016-08-30 10:22:25 8425 1

转载 gbk和utf8的区别

我们这里将以最简单最容易理解的方式来描述GBK和UTF8的区别,以及它们分别是什么。GBK编码:是指中国的中文字符,其它它包含了简体中文与繁体中文字符,另外还有一种字符“gb2312”,这种字符仅能存储简体中文字符。UTF-8编码:它是一种全国家通过的一种编码,如果你的网站涉及到多个国家的语言,那么建议你选择UTF-8编码。GBK和UTF8有什么区别?UTF8编码格

2016-08-28 22:59:01 5917 6

原创 详细图解什么叫平方探查法即二次探测再散列和线性探测再散列(数据结构 哈希函数 哈希冲突)

虽然上文有提到怎么解释的开放地址法处理hash冲突,但是当时只是给了个简单的图,没有 详细讲解一下,我当时有点不明白,回头查查资料,然后亲自动手,整理了一下。然后我就三幅图详细讲解一下:什么叫线性探测再散列;什么叫平方探测再散列(二次探测再散列);老师的ppt吧。给个原始数据如上图。下面详细解析。上面的是线性探测再散列。这个简单。

2016-08-28 22:38:44 87543 29

原创 java中的==、equals()、hashCode()源码分析

1. ==   java中的==是比较两个对象在JVM中的地址。比较好理解。看下面的代码:public class ComAddr{ public static void main(String[] args) throws Exception { String s1 = "nihao"; String s2 = "nihao";

2016-08-22 19:57:09 2211 3

转载 Hashtable,HashMap,ConcurrentHashMap 底层实现原理与线程安全问题

术语定义术语英文解释哈希算法hash algorithm是一种将任意内容的输入转换成相同长度输出的加密方式,其输出被称为哈希值。 哈希表hash table根据设定的哈希函数H(key)和处理冲突方法将一组关键字映象到一个有限的地址区间上,并以关键字在地址区间中的象作为记录在表中的存储位置,这种表称

2016-08-22 19:15:00 21021 3

原创 关于jsp文件在页面上显示乱码的问题

情况是这样的:首先我需要一个div的dom结构,用来当模板.好在js代码里面clone,然后复用的,然后为了代码结构看着清楚,我把这个模板,新建并单独放在一个jsp文件里面。然后在需要使用它的地方,然后就页面上出现了乱码了。如下:这个情况的原因就是:没有在模板的jsp文件里面引入编码格式的头。具体如下:加上这个,乱码就不见了。

2016-08-22 14:12:04 1500

原创 Java HashMap中在resize()时候的rehash,即再哈希法的理解

HashMap的扩容机制---resize()扩容(resize)就是重新计算容量,向HashMap对象里不停的添加元素,而HashMap对象内部的数组无法装载更多的元素时,对象就需要扩大数组的长度,以便能装入更多的元素。当然Java里的数组是无法自动扩容的,方法是使用一个新的数组代替已有的容量小的数组,就像我们用一个小桶装水,如果想装更多的水,就得换大水桶。我们分析下resi

2016-08-22 00:24:52 29237 28

原创 java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测)、链地址法、再哈希、建立公共溢出区

一)哈希表简介非哈希表的特点:关键字在表中的位置和它之间不存在一个确定的关系,查找的过程为给定值一次和各个关键字进行比较,查找的效率取决于和给定值进行比较的次数。    哈希表的特点:关键字在表中位置和它之间存在一种确定的关系。哈希函数:一般情况下,需要在关键字与它在表中的存储位置之间建立一个函数关系,以f(key)作为关键字为key的记录在表中的位置,通常称这个函数f

2016-08-21 22:13:37 46807 21

转载 Java 异常机制,异常的结构,运行时异常和非运行时异常

Java异常机制异常是程序运行过程中出现的错误。本文主要讲授的是Java语言的异常处理。Java语言的异常处理框架,是Java语言健壮性的一个重要体现。Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception。Java异常体系结构呈

2016-08-21 18:00:04 7711

原创 java 中try catch finally 的具体执行顺序返回结果+代码测试

执行顺序的重点就在finally中,具体如下:(1)、try:它里面放置可能引发异常的代码(2)、catch:后面对应异常类型和一个代码块,用于表明该catch块用于处理这种类型的代码块,可以有多个catch块。(3)、finally:主要用于回收在try块里打开的物力资源(如数据库连接、网络连接和磁盘文件),异常机制总是保证finally块总是被执行。只有finally块,执行完

2016-08-21 17:53:07 4447 1

原创 Java数组和链表两种结构的操作效率,在哪些情况下,哪些操作的效率高

首先这个问题,没有固定答案,全看个人理解,毕竟这2个的数据结构,大家肯定都是知道的。能有如下回答,基本就够用啦。数组:数组就像一个班级一样,一旦分完班,一个班多少人,每个人的学号啥的都是确定的啦,根据学号,喊一个学号就会有个人中,这个学号就是下标,根据下标找人就是快。单个之间关系不大链表:链表就像一个铁链,一环扣一环,不能跳过一个,直接去找下一个,必须挨个找,根据节点的

2016-08-21 16:19:41 8811

原创 Java 中队列的使用示例及常用方法示例和比较

在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。Queue接口与List、Set同一级别,都是继承了Collection接口。Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获取并移出元素。新加的方法肯定有好处,不然干嘛加他,直接用add和remove方法不就好啦。

2016-08-20 22:53:26 13116

原创 JAVA 中的几种基本数据类型是什么,各自占用多少字节。

先了解2个单词先:1、bit --位:位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为“0”或“1”。2、byte --字节:字节是计算机存储容量的基本单位,一个字节由8位二进制数组成。在计算机内部,一个字节可以表示一个数据,也可以表示一个英文字母,两个字节可以表示一个汉字。1B=8bit1Byte=8bit1KB=1024Byte(字节)=8*1024bit1MB=1024KB1...

2016-08-20 17:55:39 13061

原创 java反射中,Class.forName和classloader的区别(代码说话)

java中class.forName()和classLoader都可用来对类进行加载。class.forName()前者除了将类的.class文件加载到jvm中之外,还会对类进行解释,执行类中的static块。而classLoader只干一件事情,就是将.class文件加载到jvm中,不会执行static中的内容,只有在newInstance才会去执行static块。Class.forNam...

2016-08-20 17:14:47 57768 15

原创 Java反射结合属性文件实现工厂模式

通过属性文件的形式配置所需要的子类首先创建一个fruit.properties的资源文件内容为:apple=Reflect.Appleorange=Reflect.Orange然后编写主类代码package Reflect;import java.io.*;import java.util.*;interface fruit { void eat();

2016-08-20 00:47:42 1874

原创 利用反射机制实现工厂模式

package Reflect;interface fruit{ public abstract void eat();}class Apple implements fruit{ public void eat(){ System.out.println("Apple"); }}class Orange implements fruit{

2016-08-20 00:43:10 5889 6

原创 工厂模式的代码实现,简单易懂。

工厂模式的代码实现,简单易懂。interface fruit { public abstract void eat();}class Apple implements fruit { public void eat() { System.out.println("Apple"); }}class Orange implements fruit

2016-08-20 00:39:54 12198 2

转载 java反射详解---具体代码操作看看反射都能干些什么

1反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。2反射机制能做什么反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。

2016-08-20 00:01:58 4834 7

原创 String a= “abc” String b = "abc" String c = new String("abc") String d = "ab" + "c" .他们之间用 == 比较的结果

做个string的测试咯。如下:String a= “abc” String b = "abc" String c = new String("abc") String d = "ab" + "c" .他们之间用 == 比较的结果Java中字符串对象创建有两种形式。一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new String("droid");这两种方式我们在代码编写时都经常使用,尤其是字面量的方式

2016-08-19 13:43:59 12523 10

原创 String 类的常用方法及其大概实现原理

Java String类是灰常常用的一个类,但是天天在用每页没管过。今天就来看看哪些是常用方法的然后了解一下其大概实现然后希望达到的效果是:自从看了我的这个字符串类,让你忘了你的她(他)。关于字符串函数(split、join、indexOf、substring),这些常用的方法可参考下链接;虽然总结的是js的,但是一样的,join是java 1.8d的字符串函数(spl

2016-08-19 11:54:23 4331

转载 Set接口的实现类

Set是一种不包括重复元素的Collection。它维持它自己的内部排序,所以随机访问没有任何意义。与List一样,它同样运行null的存在但是仅有一个。由于Set接口的特殊性,所有传入Set集合中的元素都必须不同,同时要注意任何可变对象,如果在对集合中元素进行操作时,导致e1.equals(e2)==true,则必定会产生某些问题。实现了Set接口的集合有:EnumSet、HashSet、Tre

2016-08-18 10:19:07 3264

原创 @DBRef---------------springMVC

简单认识下@DBRef这个注解的作用,和使用例子。//存mongo数据库的model@Document(collection = "abc")public class Abc { @Id private String id; @DBRef private List Bs; @DBRef private User creator;}//Abc数据结构如下:{ "_i

2016-08-16 20:12:04 3100

原创 <!-- --> 与 <%-- --%> 2种注释的区别在哪里,有图有真相

是显式注释 是隐式注释 在JSP中如果你用 则在浏览器中看得到 则在浏览器中看不到。测试图如下:所以在jsp里面注释要用,不然客户不就看到你的注释了,这就显得有点水。

2016-08-16 16:47:01 7030 9

转载 HashMap的工作原理--重点----数据结构示意图的理解

HashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道HashTable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMap来考察你的编程能力。ConcurrentHashMap和其它同步集合的引入

2016-08-15 11:43:20 15607 2

转载 HashMap的数据结构---示意图和结构的理解

1.HashMap的数据结构  数组的特点是:寻址容易,插入和删除困难;而链表的特点是:寻址困难,插入和删除容易。那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的,这就是我们要提起的哈希表,哈希表有多种不同的实现方法,我接下来解释的是最常用的一种方法—— 拉链法,我们可以理解为“链表的数组” ,如图:  从上图我们可以发现哈希表是由

2016-08-15 11:41:12 6433

转载 java7--(1.7)也可能还早的-----HashMap的实现原理

HashMap也是我们使用非常多的Collection,它是基于哈希表的 Map 接口的实现,以key-value的形式存在。在HashMap中,key-value总是会当做一个整体来处理,系统会根据hash算法来来计算key-value的存储位置,我们总是可以通过key快速地存、取value。下面就来分析HashMap的存取。一、定义 HashMap实现了Map接口...

2016-08-14 23:06:32 12001 3

转载 Java 8系列之重新认识HashMap

摘要HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。简介Java为数据结构中的映射定义了一个接口java.util.M...

2016-08-14 23:02:09 11050 24

原创 程序员找工作的个人经验教训以及注意事项

忽然间想到如果要找工作的话,需要注意一些什么问题。没毕业的,刚刚毕业的,刚刚工作的都可以借鉴一下。大师兄结合自身经历,经验,稍微总结下。保存下来,以备后来者-------自己或观众使用。想当初刚刚毕业,或者说 ,还没毕业的时候,跟着班里的同学们组队到成都去找工作实习,也就是几天前的事的感觉,但是现在,大家都各奔东西,各自忙自己的,有的现在还在成都工作呢,有的已经离开啦,有的干脆就转行啦,不

2016-08-13 13:10:09 11886 15

原创 String类为什么是final的

首先,先得清楚 final 这个关键字。 final的出现就是为了为了不想改变,而不想改变的理由有两点:设计(安全)或者效率。final 修饰的类是不被能继承的,所以 final 修饰的类是不能被篡改的。 了解了这一点,我们再看看问题:1、从设计安全)上讲, 1)、确保它们不会在子类中改变语义。String类是final类,这意味着不允许任何人定义String的子类。换

2016-08-12 13:44:44 32108 1

原创 Java开发岗位面试题归类---怎么好好的准备面试,也算是发展学习方向

一、Java基础1. String类为什么是final的。2. HashMap的源码,实现原理,底层结构。3. 说说你知道的几个Java集合类:list、set、queue、map实现类咯。。。4. 描述一下ArrayList和LinkedList各自实现和区别5. Java中的队列都有哪些,有什么区别。6. 反射中,Class.forName和classloa

2016-08-11 13:42:33 8133 4

原创 Java 枚举(enum) 详解7种常见的用法

JDK1.5引入了新的类型——枚举。在Java中它虽然算个“小”功能,却给我的开发带来了“大”方便。大师兄我【大师兄】又加上自己的理解,来帮助各位理解一下。用法一:常量在JDK1.5之前,我们定义常量都是:public static final....。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。Java代码publ...

2016-08-11 11:14:45 856895 133

转载 http协议学习系列(虚拟主机的实现)

3.6.1什么是虚拟主机虚拟主机:是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等,提供必要的站点功能与数据存放、传输功能。  所谓虚拟主机,也叫“网站空间”就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWW、FTP、E-mail等)功能。一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理

2016-08-09 14:45:15 2044

转载 http协议学习系列(http代理)

3.5.1 http代理服务器代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息。形象的说:它是网络信息的中转站。代理服务器是介于浏览器和Web服务器之间的一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,Request信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器。而且,大部分代

2016-08-09 14:42:01 1298

转载 http协议学习系列(https通信过程)

3.4.1什么是httpsHTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容请看SSL。见下图:   https所用的端口号是443。3.4.2 https的实现

2016-08-09 14:40:09 2679

转载 http协议学习系列(断点续传和多线程下载的实现原理)

q      HTTP协议的GET方法,支持只请求某个资源的某一部分;q      206 Partial Content 部分内容响应;q      Range 请求的资源范围;q      Content-Range 响应的资源范围;q      在连接断开重连时,客户端只请求该资源未下载的部分,而不是重新请求整个资源,来实现断点续传。分块请求资源实例:

2016-08-09 14:38:05 3536

转载 http协议学习系列(缓存的实现原理)

3.2.1什么是Web缓存WEB缓存(cache)位于Web服务器和客户端之间。缓存会根据请求保存输出内容的副本,例如html页面,图片,文件,当下一个请求来到的时候:如果是相同的URL,缓存直接使用副本响应访问请求,而不是向源服务器再次发送请求。HTTP协议定义了相关的消息头来使WEB缓存尽可能好的工作。3.2.2缓存的优点q      减少相应延迟:因为请求从缓

2016-08-09 14:33:22 1110

SyslogWatcher

SyslogWatcher

2017-05-03

Java开发手册(阿里巴巴-公开版)

阿里巴巴 JAVA 开发手册 阿里巴巴 JAVA 开发手册 编程规约 异常日志 MYSQL 规约 工程规约 安全规约

2017-01-13

guava-19.0.jar

guava-19.0.jar包

2016-10-26

大众点评sdk例子

大众点评sdk例子,里面还有个中平台的例子,我用的是安卓平台的,经测试可行。里面还有个oAuthu授权的例子,也是可以用的,在adt上可以运行。需要自己申请app key和 app secret

2015-08-03

全国省市区sqlite数据库

全国省市区sqlite数据库,数据全,体积小。好的话,给好瓶。

2015-07-08

空空如也

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

TA关注的人

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