摘要: ArrayList分析... 阅读全文
posted @ 2017-03-05 11:17 土豆蛋炒饭 阅读(409) 评论(0) 推荐(0) 编辑
摘要: HashMap分析... 阅读全文
posted @ 2017-03-05 09:31 土豆蛋炒饭 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 反射可以使我们很方便的创建灵活的代码,这些代码可以在运行时装配,无需在组件之间进行源代码链接。反射允许我们在编写和执行时,使我们的代码能够接入装载到JVM中的类的内部信息,而不是源代码中选定的类协作的代码。 阅读全文
posted @ 2017-03-01 16:30 土豆蛋炒饭 阅读(279) 评论(1) 推荐(1) 编辑
摘要: final在Java中是一个保留的关键字,一旦将引用声明成final,那么我们就不能够改变这个引用了。 阅读全文
posted @ 2017-03-01 14:54 土豆蛋炒饭 阅读(358) 评论(1) 推荐(1) 编辑
摘要: static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前访问,无需引用任何对象。可以直接用.来访问它的成员变量和成员方法。 阅读全文
posted @ 2017-03-01 14:32 土豆蛋炒饭 阅读(254) 评论(0) 推荐(0) 编辑
摘要: String StringBuffer StringBuilder分析 阅读全文
posted @ 2017-03-01 10:19 土豆蛋炒饭 阅读(340) 评论(0) 推荐(1) 编辑
摘要: > 希尔排序算法是按其设计者希尔(Donald Shell)的名字命名,该算法由1959年公布,是插入排序的一种更高效的改进版本。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: - 插入排序在对几乎已经排好序的数据操作时,效率高。 - 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位。 1. 基本思想 1. 先取一个小于n的整数d1作为第一个增量,把待排序的全部记录分成dx个组。所有距离为d1的倍数的记录放在同一个组中 2. 先在各组内进行直接插入排序 3. 然后取第二个增量d2 阅读全文
posted @ 2017-02-28 09:38 土豆蛋炒饭 阅读(318) 评论(1) 推荐(0) 编辑
摘要: 直接选择排序算法基本思想 直接选择排序是从无序区选一个最小的元素直接放到有序区的最后。 1. 初始状态:无序区为a[1...n],有序区为空。 2. 第一次排序:在无序区a[1...n]中选出最小的记录a[k],将它与有序区的第一个元素交换,使a[1...1]和a[2...n]分别变为 记录个数增加1个的新有序区和记录个数减少1个的新无序区。 3. ... 经过n-1次排序结束。 阅读全文
posted @ 2017-02-27 16:34 土豆蛋炒饭 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 快速插入排序算法基本思想 > 每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部插入完成。 设数组为a[0...n-1] 1. 初始时,a[0]自成一个有序区,无序区为a[1...n-1]。令i=1 2. 将a[i]并入当前有序区a[0...i-1]中形成a[0...i]的有序区间 3. i++重复第二步直到i==n-1。排序完成 阅读全文
posted @ 2017-02-27 15:39 土豆蛋炒饭 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 冒泡算法基本思想 1. 设数组长度为N。 2. 比较前后两个数据,如果前面的数据大于后面的数据,就将两个数据交换。 3. 这样对数组的第0个数据到N - 1个数据进行遍历后,最大的一个数据就沉到了数组的第N - 1个位置。 4. N = N - 1,如果N不为0就重复前面两步,否则排序完成。 阅读全文
posted @ 2017-02-26 23:21 土豆蛋炒饭 阅读(200) 评论(0) 推荐(0) 编辑