Java
heyuchang666
这个作者很懒,什么都没留下…
展开
-
String,StringBuffer与StringBuilder的区别??
.三者在执行速度方面的比较:StringBuilder > StringBuffer > String (1)基本原则:如果要操作少量的数据,用String ;单线程操作大量数据,用StringBuilder ;多线程操作大量数据,用StringBuffer。 (2)不要使用String类的"+"来进行频繁的拼接,因为那样的性能极差的,应该使用StringBuffer或StringBuilder类,这在Java的优化上是一条比较重要的原则。转载 2015-11-06 14:38:34 · 496 阅读 · 0 评论 -
foreach 和 for 循环的区别
1.如果只是遍历集合或者数组,用foreach好些,快些。 2.如果对集合中的值进行修改,就要用for循环了。其实foreach的内部原理其实也是Iterator,但它不能像Iterator一样可以人为的控制,而且也不能调用iterator.remove();更不能使用下标来访问每个元素,所以不能用于增加,删除等复杂的操作。原创 2015-11-06 15:40:12 · 17156 阅读 · 0 评论 -
【字典树】串集合查找
Trie 树,又称字典树,单词查找树。它来源于retrieval(检索)中取中间四个字符构成(读音同try)。用于存储大量的字符串以便支持快速模式匹配。主要应用在信息检索领域。 Trie 有三种结构: 标准trie (standard trie)、压缩trie、后缀trie(suffix trie) 。 最后一种将在《字符串处理4:后缀树》中详细讲,这里只将前两种。 1. 标准Trie (standard trie) 标准 Trie树的结构 : 所有含有公共前缀的字符串将挂在树中同一个结点下。实际上trie原创 2015-11-11 17:20:16 · 987 阅读 · 0 评论 -
查找一个字符串里,出现次数最多的字符,时间复杂度O(n)
查找一个字符串里,出现次数最多的字符,时间复杂度O(n)原创 2015-11-11 10:54:55 · 1913 阅读 · 0 评论 -
模块化Java简介
模块化是个一般概念,这一概念也适用于软件开发,可以让软件按模块单独开发,各模块通常都用一个标准化的接口来进行通信。实际上,除了规模大小有区别外,面向对象语言中对象之间的关注点分离与模块化的概念基本一致。通常,把系统划分外多个模块有助于将耦合减至最低,让代码维护更加简单。原创 2014-12-02 13:56:12 · 613 阅读 · 0 评论