欢迎关注大数据技术架构与案例微信公众号:过往记忆大数据
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
过往记忆大数据

2013年09月的内容

算法

如何快速判断正整数是2的N次幂

如何快速判断正整数是2的N次幂
  这个问题可能很多面试的人都遇到过,很多人可能想利用循环来判断,代码可能如下所示:[code lang="JAVA"] public static boolean isPowOfTwo(int n) { int temp = 0; for (int i = 1; ; i++) { temp = (int) Math.pow(2, i); if (temp >= n) break; } if (temp == n) return true; else return false; }[/code]

w397090770   7年前 (2013-09-17) 10615℃ 6评论13喜欢

Guava

Guava学习之HashBiMap

Guava学习之HashBiMap
  HashBiMap存储的键和值都只能唯一,不存在键与键、值与值相同的情况(详细分析见我博客:Guava学习之BiMap)。HashBiMap类继承了AbstractMap类并实现了BiMap接口,其类继承关系如下图所示:[caption id="attachment_705" align="aligncenter" width="356"] HashBiMap[/caption]  AbstractMap类实现了Map接口定义的一些方法,而BiMap类定义了其子类需要实现的

w397090770   7年前 (2013-09-16) 3939℃ 0评论3喜欢

Guava

Guava学习之AbstractMapBasedMultimap

Guava学习之AbstractMapBasedMultimap
  AbstractMapBasedMultimap源码分析:AbstractMapBasedMultimap是Multimap接口的基础实现类,实现了Multimap中的绝大部分方法,其中有许多的方法还是靠实现类的具体实现,比如size()方法,其计算方法在不同实现是不一样的。同时,AbstractMapBasedMultimap类也定义了自己的一些方法,比如createCollection()。AbstractMapBasedMultimap类中主要存在以下两个成员

w397090770   7年前 (2013-09-13) 3559℃ 1喜欢

Java

里氏替换法则

里氏替换法则
  里氏替换法则(Liskov Substitution Principle LSP)是面向对象设计的六大基本原则之一(单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特法则以及开闭原则)。这里说说里氏替换法则:父类的一个方法返回值是一个类型T,子类相同方法(重载或重写)返回值为S,那么里氏替换法则就要求S必须小于等于T,也就是说要么

w397090770   7年前 (2013-09-12) 3708℃ 3评论0喜欢

Guava

Guava学习之Iterators

Guava学习之Iterators
  Iterators类提供了返回Iterator类型的对象或者对Iterator类型对象操作的方法。除了特别的说明,Iterators类中所有的方法都在Iterables类中有相应的基于Iterable方法对应。  性能说明:除非特别说明,所有在这个类中的迭代器都是懒惰的,这意味着在觉得必要的时候,需要提前得到迭代功能。Iterators类可以通过emptyIterator()方法得到

w397090770   7年前 (2013-09-11) 3705℃ 3评论0喜欢

Guava

Guava学习之Lists

Guava学习之Lists
  Lists类主要提供了对List类的子类构造以及操作的静态方法。在Lists类中支持构造ArrayList、LinkedList以及newCopyOnWriteArrayList对象的方法。其中提供了以下构造ArrayList的函数:下面四个构造一个ArrayList对象,但是不显式的给出申请空间的大小:[code lang="JAVA"]   newArrayList()   newArrayList(E... elements)   newArrayList(Iterable<?

w397090770   7年前 (2013-09-10) 18854℃ 2评论8喜欢

Guava

Guava学习之Splitter

Guava学习之Splitter
  Splitter:在Guava官方的解释为:Extracts non-overlapping substrings from an input string, typically by recognizing appearances of a separator sequence. This separator can be specified as a single character, fixed string, regular expression or CharMatcher instance. Or, instead of using a separator at all, a splitter can extract adjacent substrings of a given fixed length. 

w397090770   7年前 (2013-09-09) 6399℃ 1评论0喜欢