1.StringBuffer与StringBuilder的区别:
StringBuffer线程安全,StringBuilder线程不安全。(笔试,面试题)建议使用StringBuilder,因为他线程不同步,却能提高效率。
2.JDK之所以升级的三个原因:
(1)简化书写
(2) 提高效率
(3)提高安全性
3.基本数据类型对象的基本作用:
除了封装一些便利的操作方法,最主要的目的是为了和String类型做转换 例如:Integer.toString(基本数据类型的值)。int num=Integer.parseInt("str");
进制转换:int num=Integer.parseInt("str",2);转成2进制
1.5版本后,自动装箱 Integer x=4==Integer x=new Integer(4);
注意:字符串传入格式要正确!
4.集合框架Collection<E>:
collection是顶层接口,里面分List,Set
*List: ArrayList,LinkedList
*Set: HashSet,TreeSet
collection接口里声明很多方法,详细使用详见API
* 任何集合框架的add方法只是添加了对象的引用(重点)
4.1.集合类里的迭代器(Iterator):
Iterator是定义在集合类里的内部类,实现了Iterator接口,可以判断(hasNext),取出数据(next)
4.2List 接口
常见方法:
add(int index,Object o);//在指定位置添加元素
remove(int index);//删除指定位置元素
set(int index,Object o);//修改元素
ger(int index);//通过索引取得元素
iterator();//迭代取得所有元素
4.2.1ArrayList:
优点:查询和修改很快,删除,添加很慢
与Vector相比,线程不同步但底层都是数组实现
4.2.2LinkedList:
优点:添加和删除很快,缺点:查询修改很慢
特有方法:
addFirst(); addLast();getFirst();getLast();get((获取元素,但不删除元素) remove(不光取,还删除元素);
4.2.3Vector:
优点:线程同步,安全
较前两个相比,线程同步效率偏低(无论增删改查)。被ArrayList替代了,如果遇见多线程,有专门方法可以加锁
Vector拥有特有的取出方式: 枚举