java常见的几个易混淆点


一.对于数组长度,字符串长度和泛型长度

      获取数组长度是属性length;          获取字符串长度是length();          获取泛型长度是size();

      字符串转化为数组

二.String,StringBuffer和StringBuilder的区别

    1.String字符串常量(不可变对象)

        String a(对象引用)="aaa"(新建一个对象); a(对象引用)="bbb"(新建一个对象)       

        对String类型进行改变的时候其实都等于生成了一个新的String对象

    2.StringBuffer字符串变量(可变对象,线程安全,用于多线程)

        主要操作是append()和inser()方法,主要是对同一个对象操作

        StringBuffer a(对象引用)=new StringBuffer("aaa")(新建一个对象);    

        a.append("bbb");  (在对象“aaa”后面加上一个字符串变成“aaabbb”,依旧是一个对象)

     3.StringBuilder(非线程安全,用于单线程)

          出现的原因:StringBuilder>StringBuffer

二.迭代器和for循环的效率比较

     参考出处:http://blog.csdn.net/c1347623993/article/details/9209767

     对于ArrayList(顺序存储)来说,for循环(最快)      foreach循环(中间)           iterator循环(最快)

     对于LinkedList(链式存储)来说   for循环(最慢)      foreach循环(最快)== iterator循环(最快)

     for循环便于访问顺序存储的记录,而foreach和迭代器便于访问链接存储。

四.java中的基本数据类型和封装类

      参考出处:http://blog.csdn.net/maggiedorami/article/details/7944459/





















































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值