---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
08/05/14 开学的第十五天基础记录:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1.Collections类:
常用方法:sort() max() min() reverse() rotate() copy() swap()
2.排序:
自然排序要求参与排序的对象必须实现Comparable接口,其中的compareTo方法决定了排列次序。
–可逆性,必须确保对于所有的x 和y,都存在sgn(x.compareTo(y)) == -sgn(y.compareTo(x) )
–传递性,必须满足以下条件,即当:
(x.compareTo(y)>0 && y.compareTo(z)>0) ,则x.compareTo(z)>0
–一致性,必须确保x.compareTo(y)==0 意味着对于所有的z,
都存在sgn(x.compareTo(z)) == sgn(y.compareTo(z))
–应该满足(x.compareTo(y)==0) == (x.equals(y))
完全排序只需要为集合提供一个排序子,即Comparator的实现类,参与排序的对象无需实现Comparable接口。
Comparator在编写时,也应该满足上述四类限制。
3.Properties类:
Properties也是一种Map(继承Hashtable),但要求它的键和值都必须是字符串类型的。
Properties代表了一个持久的属性集,可以从流中加载(load方法),也可以保存到流中(store方法)。
与Properties对应的文件有如下要求:
–自然行:行以换行符(/r、/n或/r/n)结束,或文件结尾
–注释行:以“#”、“!”开头,注释行在加载时将被忽略
–空行:仅包含有空白字符,空格、制表、换页,空行忽略
–逻辑行:包含键与值的行,键与值之间用空白、“:”或“=”分隔
Properties应用比较广泛,一般用于读取系统的配置文件。
4.常用类补充:
Math,BigDecimal,BigInteger