2013年3月17日

Collection框架浅谈

摘要: Collection框架集合框架(Collection Framework)泛指java.util包的若干个类和接口.如Collection,List,ArrayList,LinkedList,Vector(自动增长数组),HashSet,HashMap等.集合框架中的类主要封装的是典型的数据结构,如动态数组,链表,堆栈,集合,哈希表等.集合框架类似编程中经常用到的工具类,使得编码这专注于业务层的实现,不需要从底层实现相关细节—“数据结构的封装”和”典型算法的实现”.1. Collection框架中实现比较要实现什么接口? Comparable/comparator2. ArrayList和V 阅读全文

posted @ 2013-03-17 23:14 jackrex 阅读(305) 评论(0) 推荐(0) 编辑

一道C++面试题的误区

摘要: 一道C++面试题的误区问题:寻找数组中的最小值和最大值。一道很简单的题目,一般有下面4种解法:1遍历两次,每次分别找出最小值和最大值。2只遍历一次,每次取出的元素先与已找到的最小值比较,再与已找到的最大值比较。3每次取两个元素,将较小者与已找到的最小值比较,将较大者与已找到的最大值比较。4分治:将数组划分成两半,分别找出两边的最小值、最大值,则最小值、最大值分别是两边最小值的较小者、两边最大值的较大者。这4种算法,哪种效率最高,哪种最低?后两种算法只要进行1.5*N次比较,因而网上有不少解答都将它们列为最佳答案。但是,算法4用到了递归,而递归法函数调用的开销是很大的,这就注定了该算法的效率肯定 阅读全文

posted @ 2013-03-17 22:21 jackrex 阅读(266) 评论(0) 推荐(0) 编辑

编程之美----1

摘要: [cpp]view plaincopy<spanstyle="font-family:微软雅黑;">这是《编程之美》的2.20题目,给出一段C#代码,要求不用电脑,理解程序并回答问题。下面是从C#代码中改写成的C++代码:</span>[cpp]view plaincopy<spanstyle="font-size:14px;">#include<iostream>#include<limits>usingnamespacestd;intmain(){intrg[]={2,3,4,5,6,7,8 阅读全文

posted @ 2013-03-17 21:50 jackrex 阅读(290) 评论(0) 推荐(0) 编辑

给Android应用开发者的十个建议

摘要: 随着移动平台的发展和其应用的不断改善,质量成为决定成败的关键。用户要求他们选择安装的应用响应快、性能好,如果某个应用不能提供卓越的功能和稳定的用户体验,那这样的应用注定会被很快卸载。尽管现在Android智能手机和平板电脑的运行速率越来越快,但开发者仍需牢记,应用的运行环境仍受到电池和处理器等诸多资源的限制。以下是如何为应用“瘦身”的十条建议,以便能在当前和以后的所有Android设备都能运行出最佳效果。 1)首先要有良好的编码习惯 一个优秀的开发者应该善于运用常识、完善的算法和标准设计模式。要有资源意识,打开了就要记得关闭,尽量做到晚获取,早释放。这些由来已久的编码准则同样适用Andro.. 阅读全文

posted @ 2013-03-17 12:17 jackrex 阅读(124) 评论(0) 推荐(0) 编辑

StringTokenizer

摘要: StringTokenizer是一个用来分隔String的应用类,相当于VB的split函数。1.构造函数public StringTokenizer(String str)public StringTokenizer(String str, String delim)public StringTokenizer(String str, String delim, boolean returnDelims)第一个参数就是要分隔的String,第二个是分隔字符集合,第三个参数表示分隔符号是否作为标记返回,如果不指定分隔字符,默认的是:”\t\n\r\f”2.核心方法public boolean 阅读全文

posted @ 2013-03-17 08:33 jackrex 阅读(246) 评论(0) 推荐(0) 编辑

工厂模式

摘要: 一、工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。工厂模式在《Java与模式》中分为三类:1)简单工厂模式(Simple Factory):不利于产生系列产品;2)工厂方法模式(Factory Method):又称为多形性工厂;3)抽象工厂模式(Abstract Factory):又称为工具箱,产生产品族,但不利于产生新的产品;这三种模式从上到下逐步抽象,并且更具一般性。GOF在《设计模式》一书中将工厂模式分为两类:工厂方法模式(Factory Method)与抽象工厂模式(Abstract Factory)。将简单工厂模式(Simple F 阅读全文

posted @ 2013-03-17 00:11 jackrex 阅读(178) 评论(0) 推荐(0) 编辑

i++与++i

摘要: i++与++i请问下列的结果是甚么呢?i=1(一)k=(i++)+(i++)+(i++)(二)k=(++i)+(++i)+(++i)回答:这样的表达式的求值顺序是没有定义的。因为分号是一个顺序点,而二元加号不是一个顺序点,相邻顺序点之间的表达式的求值顺序是任意的,并且它们的副作用只在下一个顺序点之后才生成。不管是k = (i++) + (i++) + (i++);还是k = (++i) + (++i) + (++i);这里分号是一个顺序点,理论上所有++操作和赋值操作的副作用都要在分号之后才生成。但是这一点并不是强制编译器必须要等到分号结束之后才执行赋值操作,只是规定相邻两个顺序点之间的表达式 阅读全文

posted @ 2013-03-17 00:07 jackrex 阅读(332) 评论(0) 推荐(0) 编辑

导航