自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hemingway

提问的智慧<智慧+毅力=无所不能><https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/master/READM>

  • 博客(41)
  • 收藏
  • 关注

转载 Java常用排序算法

1、冒泡排序冒泡排序是排序算法中最基本的一种排序方法,该方法逐次比较两个相邻数据的大小并交换位置来完成对数据排序,每次比较的结果都找出了这次比较中数据的最大项,因为是逐次比较,所以效率是O(N^2)的。[java] view plaincopypublic void bubbleSort() {          int out,

2016-08-13 23:09:29 297

转载 Java常用23种设计模式

设计模式(Design Patterns)                                  ——可复用面向对象软件的基础设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真

2016-08-13 23:05:38 602

转载 java中request常用方法小结

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息。request常用方法:一、获取客户机环境信息常见方法:  1.getRequestURL方法返回客户端发出请求时的完整URL。  2.getRequestURI方法返回请求行中的资源名部分。

2016-08-06 23:53:43 1129

转载 Errors occurred during the build. Errors running builder 'DeploymentBuilder' on project 'myf'. java.

Errors occurred during the build. Errors running builder 'DeploymentBuilder' on project 'myf'. java.lang.NullPointerException此问题一般发生在Myeclipse 保存文件并自动部署时候。Errors occurred during th

2016-08-05 13:43:15 399

原创 [Java] 最近导入外部项目遇到的一些问题的解决办法的分享

最近做一个Java Web项目,网上下载一些项目,导入项目时遇到了一些问题,找到了解决办法,分享一下吧:网上某些项目下载下来的jdk版本和project facets所用的jdk版本都比较低,如果myeclipse装的是新版本的jdk会出现一系列的问题,如图myeclipse导入本地的项目文件: 其中提示有错误,在Problems中提示有两个错误:1、Description Resourc

2016-08-01 08:50:13 2233

转载 Java实现几种常见排序方法

Java实现几种常见排序方法日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元

2016-07-26 15:20:48 502

原创 字典排序

实现一个算法对多个字符串进行排序,不能使用现有的类,在排序中,字符串“Bc”,“Ad”,“aC”,“Hello”,“Xman”,“little”,“During”,“day”能够排序成“Ad”,“aC”,“Bc”,“During”,“day”,“Hello”,“little”,“Xman”,也就是说,在排序的过程中并不是传统的按照字符串排序,在排序中海需要将小写字母一并排序,也就是说a字符串要在B

2016-07-24 20:01:19 877

转载 Java实现按字节长度截取字符串的方法

Web应用程序在浏览器中显示字符串时,由于显示长度的限制,常常需要将字符串截取后再进行显示。但目前很多流行的语言,如C#、Java内部采用的都是 Unicode 16(UCS2)编码,在这种编码中所有的字符都是两个字符,因此,如果要截取的字符串是中、英文、数字混合的,就会产生问题,如下面的字符串:String s = "a加b等于c,如果a等1、b等于2,那么c等3"; 

2016-07-21 11:28:52 14111 1

原创 两种初始化方式的区别(总结)

1、String s1=“abc”2、String s2=new String("abc")第一句:JVM先根据“abc”在String Pool中查找是否有“abc”同名字符串,如果存在,就赋值给s1;如果不存在就创建一个“abc”存放在String Pool中,String Pool会存储在Method Area中(方法区(Method Area)与Java堆一样,是各个线程共

2016-07-06 17:27:38 1130

转载 九大基础排序总结与对比

一、对比分析图均按从小到大排列k代表数值中的”数位”个数n代表数据规模m代表数据的最大值减最小值 稳定性:稳定排序算法会让原本有相等键值的纪录维持相对次序。也就是如果一个排序算法是稳定的,当有两个相等键值的纪录R和S,且在原本的列表中R出现在S之前,在排序过的列表中R也将会是在S之前。二

2016-06-24 14:53:08 677

转载 PopupWindow

Android的对话框有两种:popupWindow和AlertDialog。他们的不同点在于,AlertDialog的位置固定,而PopupWindow的位置可以随意PopupWindow的位置按照有无偏移分,可以分为偏移和无偏移两种:按照参照物的不同,可以分为相对于某个控件和相对于父控件。具体如下            showAsDropDown(View a

2016-05-29 14:34:42 231

转载 他好,我也好

在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择,或者给用户提示,这个情况下方便了客户,也便利了自己,不用重复的去创建Activity,可谓“他好,我也好”。这些功能我们们叫它Android Dialog对话框,在我们使用Android的过程中,Android Dialog的类型也分好几种。AlertDialog实现方法(建

2016-05-29 14:33:53 277

转载 如何进行快速学习

学习是每位专业人士生命中必不可少的过程。每一个公司都希望它的新进员工能够快速的学习,并尽快创造利润。那么一个人的学识总和他的工作经验成正比吗?还是他可以快速的学习而不受资历的束缚?让我们看一看可以让专业人士在工作中快速学习的5件事:不要轻易放弃  这是所有所有应谨记的事情中最重要的一件。当你遇到解决不了的困难,不要放弃。尽可能地去尝试。每当你感觉要放弃的时候,告诉自己每

2016-05-29 14:32:58 459

转载 观察者设计模式

一、概述           观察者设计模式,  它定义了一种一对一或者一对多的依赖关系,让多个观察者同时监听某一个主体对象,当这个对象发生变化时,会通知所有观察者对象,使他们能够自动更新自己。通俗点说就是,当被观察者对象发生变化时,所有观察他的人即所有观察者都会被通知到,然后观察者根据返回的数据进行相应操作。二、解决的问题        将一个系统分割成一个一

2016-05-29 14:32:31 372

转载 装饰者设计模式

昨天跟大家提到装饰者设计模式,今天就来详细的对它进行了解吧。首先我们要了解装饰者设计模式应用于什么场景,就说昨天的游戏案例,如果我们需要一个角色,不停的添加各种装备,比如说人物A叫盖伦,他不断的更新装备,那么这个时候我们就是动态的再给他添加装备,如果按照一般的逻辑,我们可能首先定义一个抽象的盖伦类,然后加一件装备创建一个对象来继承他,然后加具体的实现,这个时候如果有很多个种类,很多种搭配的

2016-05-29 14:32:03 449

转载 如何构建一个优秀的开发框架

我们开发过程中,常因为一开始的架构不怎么合理而有可能造成后边客户或者项目经理改需求时,造成我们需要修改原来的代码,一方面是可能写的时间久了回顾起来麻烦,另一方面是牵一发而动全身,改动一个地方造成所有的地方都需要改动,由此可见一个好的架构是多么重要。那么今天给大家讲一种策略设计模式来定义一个利于扩展的框架。简单举个例子,我们开发一款游戏如果有需要定义一个角色,有武器攻击,有武器防

2016-05-29 14:31:19 524

转载 作为一个学习者,你的学习方式正确么

初学者一方面是因为可能之前没有接触过编程,觉得学起来缺乏信心,另一方面就是不正确的学习方式导致学习的过程中导致一个恶性循环,学不好,越来越缺乏信心,越缺乏信心,越学不好,到最后可能掌握的东西就非常少了。那么我们要怎么通过正确的学习方式,来不断汲取知识,达到事半功倍呢,下面给大家总结一些好的学习方法:1、专精初学者不要看太多的书,或者太多的教学视频,一般一本书,或

2016-05-29 14:30:55 555

转载 接口回调机制

前两天跟之前的一个学生聊天的时候,他说到,我这有几个小弟,工作一年了,接口回调都不会用,那么我们今天呢就给大家讲讲接口的回调吧。接口回调:百度百科上说是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对

2016-05-29 14:30:04 428

转载 迷茫了么?

Android开发中经常使用的有这么多点技能,你掌握了多少,走到了哪一步,如果现在感觉就是做做UI,处理处理网络请求数据,感觉不到上升空间,那么这些东西你掌握了么。1)Activity相关 App应用开发,Activity可以说是Android的基础部分了,但是基础部分必须掌握的几个点,你掌握了么,首先我们要掌握的就是activity生命周期,这个是了解和使用activ

2016-05-29 14:29:23 276

转载 fragment间相互传值

在Activity中加载Fragment的时候,有时候可能会使用多个Fragment,这个时候就会产生多个fragment切换,并传值到另外一个fragment。也就是说两个fragment之间的参数传递,下面我介绍两种使用的比较多的方法;方法一、在Activity中定义一个字段、然后添加set和get方法、也就是说我们在activity中定义一个类似于全局变量的参数,

2016-05-29 14:28:48 4382

转载 "初级"和"高级"的区别在哪里?

这听起来确实是一个很明显的问题,但是它真的有这么简单吗?我听到过公司里的一些开发人员讨论这个问题。当时我的一位高级工程师正与两个初级工程师讨论一些其他的事情。当事情讨论完,其中一个初级工程师提出了这个问题,初级工程师还是高级工程师。那个高级工程师,恰好是那些个我有幸一起工作中遇到的最好最聪明的工程师中的一员,从他的角度,花费了30分钟去努力阐述区别在哪里。

2016-05-29 14:28:05 761

转载 少一些套路,多一些升华

少一点套路,多一点真诚,哈哈,此处套路我们取用一个套路,少一些嵌套和歪路,多一些真诚的优化!!优化布局是Android中很重要的,无论是在自定义控件中,还是在简单的书写布局时,都应该尽量遵循一些优化原则,这样布局的绘制效率才会更高,体验才能更好,本文主要跟大家介绍一下我们开发中常用的几种优化方式:一、优化布局的层级,Android在绘制界面的时候会消耗性能,如果嵌套过多甚至会影

2016-05-29 14:27:21 500

转载 详解handler机制

老规矩详解handler机制,那么第一:什么是handler机制百度百科里这么解释,handler机制,在Android中提供了一种异步回调的机制,我们可以在完成一个很长时间的任务后做出相应的通知。直白一点说就是可以等待返回结果后进行相应的逻辑处理。原理是: Handler 先进先出原则。  Looper类用来管理特定线程内对象之间的消息交换(Message E

2016-05-29 14:26:40 285

转载 android的五种存储机制

Android提供了5种方式存储数据:--使用SharedPreferences存储数据;--文件存储数据; --SQLite数据库存储数据;--使用ContentProvider存储数据;--网络存储数据;Preference,File,DataBase这三种方式分别对应的目录是: /data/data/Package Name/Shared_Pr

2016-05-29 14:26:13 2834

转载 “滴答,滴答...”“出来了,出来了!!!”

老规矩,学习一个东西我们首先从几个方面来了解他:1、什么是内存溢出/内存泄露2、怎么会造成内存溢出/内存泄漏3、内存溢出/内存泄露有什么危害4、怎么解决内存溢出/内存泄露第一点:什么是内存溢出/内存泄露内存溢出,俗称OOM是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory。

2016-05-29 14:24:09 359

转载 “你让开!”,“凭什么我先让,你让开!”

面试过程中偶尔会有面试官会问到死锁的问题,那么我们通常了解一个东西是怎么了解的呢,比如死锁,什么叫死锁,什么情况下会发生死锁,死锁怎么解决,或者怎么避免死锁,这就是我们学习一个东西去掌握时需要考虑的。学到多线程的时候,经常有过注意让我们避免发生死锁问题,那么什么是死锁呢?百度百科上面是这么回答的:所谓死锁, 是指两个或两个以上的进程在执行过程中,由于竞争资源

2016-05-29 14:22:41 564

转载 如何获取不重复随机数的

面试过程中,有些面试官会问到如何取一组不重复的随机数,今天威哥跟大家介绍两种方法,当然这两种方法的前提是取数的这个数组没有重复的数方可。方法一:换位排除法public static int[] getNoRepeatNumByChange(int[] arr, int noRepeatNums) {        int[] newArr = new int

2016-05-29 14:22:07 1656

转载 你“out”了吗?

对于单一Activity的应用来说,退出很简单,直接finish(),或者使用killProcess()和System.exit()这样的方法。但是对于多个Activity的应用来说,在打开多个Activity的应用来说,如果想在最后打开的Activity中直接退出的话,上述的方法都是没用的。在2.1之前,可以使用ActivityManager的restartPackage方法

2016-05-29 14:21:25 242

转载 开始便持久 or 绑定共生死

面试过程中经常会遇到一些试题或者面试官问你startService 和 bindService 的区别,今天我们就来分析分析这两种启动service方式的差异通过startService 启动serviceService会经历 onCreate --> onStart stopService的时候直接onDestroy 如果是 调用者 直

2016-05-29 14:20:15 417

转载 8/4 ?= 2

开发这么多年,听很多同学都说过,面试题总会遇到诸如8怎么计算得到2最快,有人会说8除以4嘛,很明显了。说这话的就是行外人啦,也有人会说不就是位移么?是的就是位移,但是怎么位移,下面就跟威哥来看一下 圈内人都知道,计算机是以二进制进行存储,运算的,也就是所谓的01010101...,无论是图片,数据还是什么其他都是以二进制形式来撸的。所以真正在计算8/4的时候计算机会把8和4先转换成

2016-05-29 14:19:33 726

转载 对HashMap的“操”作

今天讲解的主要是使用多种方式来实现遍历HashMap取出Key和value。首先在java中如果想让一个集合能够用for增强来实现迭代,那么此接口或类必须实现Iterable接口。Iterable究竟是如何来实现迭代的,下面我们来讲解一下Iterable。IterableIterator是迭代器类,而Iterable是接口。 好多类都实现了Itera

2016-05-29 14:18:40 303

转载 深入理解内存溢出和泄露

上周考试见老师给同学们出的一道题:什么是内存泄露,举例说明。很有趣的是听改卷的老师说,前面有一道递归题,然后有部分同学直接去掉了递归的出口,把他作为内存泄露的例子。这一点让我意识到很多人其实并没有分清楚内存泄露和内存溢出,那么说根本就是没懂内存泄露和内存溢出的根本概念。所以我专门写了这篇文章,希望通过通俗易懂的语言让大家对这二者有个清楚的区分。那么什么是内存

2016-05-29 14:04:03 1682

转载 MyEclipse项目里面出现红叉的解决方案?

一般出现在从别处import的项目上,只有项目文件夹上有红叉,其他地方都正常,现总结个人的几个解决方案:有几种可能:1,编码设置是否一致,也即是你项目原来的编码和现在eclipse用的默认编码是否一致2,导入项目中jar路径可能已经被改变,多数情况下都是这个原因造成,我也曾经遇见过,你要确保你的jar包路径都没问题。myeclipse有查看jar路径的视图你可切换看看,报红X的

2016-05-29 08:57:02 12666

转载 myeclipse中,项目上有个叉报错,文件没有错误【解决方案】

因工作原因,同事将他的java项目交接给了我。和平时的交接一样。他把他最新的源代码,打成压缩包,发给我。我解压后,使用myeclipse开发工具,通过导入,将项目导入到我的开发工具中,这个时候有一个问题出现了,在项目上有个红色的叉号。而源代码也没有任何错误。因为代码在同事那里,一切正常。如下图所示:    我找了很长时间的原因,还真不好找,今天早上来,我又在找,终于在csdn论坛上,看到一

2016-05-29 08:24:40 692

转载 ArrayList LinkedList Vector的区别

1. List概述List,就如图名字所示一样,是元素的有序列表。当我们讨论List时,将其与Set作对比是一个很好的办法,Set集合中的元素是无序且唯一的。下图是Collection的类继承图,从图中你可以对本文所讨论的知识有大致的了解.图12. ArrayList、LinkedList与Vector的对比从图中可以看出,这三者都实现了List 接口.所有使用方式也很相似

2016-05-12 21:21:19 378

原创 String StringBuffer与StringBuilder的区别

java中String、StringBuffer、StringBuilder是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题。现在总结一下,看看他们的不同与相同。1.可变与不可变  String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。    private final char value[];

2016-05-12 21:18:02 809

转载 java的四种引用,强弱软虚,用到的场景

1、强引用(StrongReference)         强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下:?                                              1Object o=new Object();   //  强引用当内存空间不足,Java虚拟

2016-05-11 22:59:58 10568 2

转载 Object有哪些公用的方法

Object是所有类的父类,任何类都默认继承Object。clone保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常equals在Object中与==是一样的,子类一般需要重写该方法hashCode该方法用于哈希查找,重写了equals方法一般都要重写hashCode方法。这个方法

2016-05-11 22:55:55 506

原创 equals与==的区别

java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean   他们之间的比较,应用双等号(==),比较的是他们的值。 2.复合数据类型(类)   当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否

2016-05-11 22:54:50 220

原创 Switch能否用String做参数

在 Java 7之前,switch 只能支持 byte、short、char、int或者其对应的封装类以及 Enum 类型。在 Java 7中,String支持被加上了。12345678910switch (ctrType) {    case "01" :         exceptionType = "读FC参数

2016-05-11 22:51:40 417

空空如也

空空如也

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

TA关注的人

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