
java
文章平均质量分 65
HappyAngelCJ
这个作者很懒,什么都没留下…
展开
-
String,StringBuffer,stringBulider三者的区别
String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象(为什么?问问 Java 的设计者吧,为什么 String 不是原生类型呢?)因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产翻译 2016-10-12 15:43:46 · 351 阅读 · 0 评论 -
java内存的计算
实际上,这种方法基本上正确了,但是By Tony Sintes疏忽了一点,就是仅仅Runtime.getRuntime().gc();并不能真正完成垃圾收集,也就是说实际上jvm的内存此时并不是稳定的。 所以,只有当内存不再发生大的变动,或者说已经稳定,我们才可能说垃圾收集已经完成。 如何才能真正确保基本完成了jvm的垃圾收集呢?实现这个功能的代码如下:原创 2016-10-12 15:45:46 · 458 阅读 · 0 评论 -
java 中字符串比较用=和equals区别
=:是比较两个字符串引用的地址是否相同,即是否指向同一个对象equals方法:则比较字符串的内容是否相同。例如String a = "abc"; String b = "abc";a == b返回true,a.equals(b)同样返回true,这是为什么呢? 原来程序在运行时有一个字符串池,创建字符串时会先查找池中是否有相应的字符串,如果已经存原创 2017-03-02 21:57:58 · 7218 阅读 · 0 评论 -
java中使用队列:java.util.Queue (转)
Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Queue接 口。Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法 了,而不能直接访问 LinkedList的非Queue的方法),以使得只有恰当的方法才可以使用。BlockingQueue 继承了Q转载 2017-02-15 16:10:05 · 600 阅读 · 0 评论 -
Trie 树
Trie树,又称字典树,关于它的结构就不详细介绍了。Trie树在单词统计、前缀匹配等很多方面有很大用处。它的主要特点如下:根节点不包含字符,除根节点外的每一个节点都只包含一个字符。从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串。 每个节点的所有子节点包含的字符都不相同。我自己用java实现了一个最基本的Trie树,功能有:插入单词,查找单词,删除单词,以转载 2017-03-09 16:17:17 · 316 阅读 · 0 评论 -
HashTable与HashMap区别
哈希表是一种重要的存储方式,也是一种常见的检索方法。其基本思想是将关系码的值作为自变量,通过一定的函数关系计算出对应的函数值,把这个数值解释为结点的存储地址,将结点存入计算得到存储地址所对应的存储单元。检索时采用检索关键码的方法。现在哈希表有一套完整的算法来进行插入、删除和解决冲突。在Java中哈希表用于存储对象,实现快速检索。 Java.util.Hashtable提供了种方法让用户使用哈原创 2017-03-21 22:03:46 · 322 阅读 · 0 评论