Integer.parseInt(s)与valueOf(s)、String、StringBuffer和 StringBuilder 、ArrayDeque 和 Stack ,LinkedList区别

本文作为一个小笔记,记录几个容易弄混的java类或方法

* 1. Integer.parseInt(s)与Integer.valueOf(s)的区别
 *      parseInt返回的是int基本数据类型
 *      valueOf 返回的是Integer包装类,能够调用各种方法。
 *
 * 2. String、StringBuffer和 StringBuilder 的区别
 *    |-- 都是 final 类,都不允许被继承;
 *    |-- String类长度是不可变的,String + 的拼接是创建新的对象,将指针指向新对象
 *    |-- StringBuffer和 StringBuilder类长度是可以改变的;在自身基础上改变
 *    |-- StringBuffer 类是线程安全的,StringBuilder不是线程安全的;
 *
 *    如果要操作少量的数据,用String
 *    单线程操作大量数据,用StringBuilder
 *    多线程操作大量数据,用StringBuffer
 *
 *  3. ArrayDeque 和 Stack ,LinkedList 的区别
 *  ArrayDeque实现Deque接口,
 *  Stack继承于Vector,
 *  LinkedList实现 Deque与 List接口。
 *
 *  |--底层存储方式
 *      Stack	长度为10的数组
 *      ArrayDeque	长度为16的数组
 *      LinkedList	链表
 *
 *  |-- 方法参照表
 *    Stack           ArrayDeque                  LinkedList
 *  push()         add() 队列/offer()add() 队列/offer()*  pop()          remove()/poll()             remove()/poll()
 *  peek()         get()/peek()                get()/peek()
 *
 *  |-- 线程安全
 *  Stack 线程安全,不建议使用
 *  ArrayDeque 线程不安全,频繁的随机访问操作使用,可以作为队列、栈使用
 *  LinkedList 线程不安全,频繁的插入、删除操作使用,可以作为队列、栈使用
 *
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值