Java SE基础类库

4000多个基础类 合格的程序员需要熟悉70%

字符串类 String StringBuffer StringBuilder

处理时间Date过时 使用Calendar

正则表达式Pattern Matcher 同时String类也增加正则支持

国际化支持Locale ResourceBundle加载Locale对应的语言资源文件 调用getString()方法

main()方法由JVM调用 使用public static void修饰符

JVM默认将args数组设置成一个长度为0的数组

参数本身含有空格的情形 java ArgsTest "Java Spring"

Scanner基于正则表达式的文本扫描器 可从文件、数据流、字符串中解析出基本类型和字符串值

使用空白(空格、Tab空白、回车)作为输入项的分隔符

hasNext()方法和next()方法都有可能阻塞 hasNext()是否阻塞与next()是否阻塞无关

通过System类和Runtime类和运行平台交互 访问环境变量和系统属性 加载文件和动态链接库

identityHashCode根据对象的地址进行hashCode的计算

Runtime运行时环境 每个程序有一个Runtime对象 exec启动一个新进程运行操作系统命令

Object类的equals方法判断两个对象是否是同一个对象没有实际意义 hashCode()也是根据地址计算

toString()方法返回"运行时类名@十六进制hasCode值"

clone()方法使用protected修饰 只能被子类重写或调用

实现Cloneable接口 实现自己的clone方法 一般调用super.clone() 浅克隆 引用类型的成员变量仅仅复制引用 不复制指向的对象

StringBuilder和StringBuffer类似 StringBuffer是线程安全的 StringBuilder性能更高 CharSequence字符串的协议接口

构造器String()创建包含0个字符串序列的String对象

String(byte[] Charset) 使用指定的字符集将byte[]数组解码成一个新的String对象

compareTo 如果是子串 返回长度差 否则返回第一个不同字符的差

contentEquals(StringBuilder sb) 比较包含的字符序列 getBytes[]将String对象转换成byte数组

getChars方法 将字符串放入字符数组中 toCharArray转换为字符数组

 Math nextUp()返回比目标数略大的浮点数 nextAfter()返回与第一个参数相邻的浮点数

Random类 提供了更多的方式产生随机数 ThreadLocalRandom类在并发环境下减少多线程资源竞争 使用current()方法获得对象

当种子相同 方法调用顺序相同 产生的数字序列就相同 证明Random是一种伪随机,不是随机。

浮点数的加减乘除是不精确的 引入BigDecimal 最好使用字符串作为构造器参数 如果使用BigDecimal(5.0)不能得到精确的浮点数 应该采用BigDecimal.valueOf(5.0)的方式

猜你喜欢

转载自bobwaters.iteye.com/blog/2418674