一、八种基本数据类型,大小以及他们的封装类型
基本类型 | 大小(字节) | 默认值 | 封装类型 |
---|---|---|---|
byte | 1 | (byte)0 | Byte |
short | 2 | (short)0 | Short |
int | 4 | 0 | Integer |
long | 8 | 0L | Long |
float | 4 | 0.0f | Float |
double | 8 | 0.0d | Double |
boolean | - | false | Boolean |
char | 2 | \u0000(null) | Character |
二、String相关面试题
1、String、StringBuffer和StringBuilder的区别是什么?
String只是字符串,并不是基本数据类型,而是一个对象。从底层源码看是一个final修饰的字符数组,索引用的字符串不能被改变,已经定义则无法增删改。
StringBuffer和StringBuilder都继承了AbstractStringBuilder抽象类
char[] value;
底层都是可变字符串数组,所以在进行频繁的字符串操作时建议使用StringBuffer和StringBuilder来进行操作。
2、StringBuilder和StringBuffer的区别
StringBuffer对方法加了同步锁synchronized,所以是线程安全的,StringBuilder并没有对方法加同步锁,所以是非线程安全的。单线程时使用StringBuilder替换StringBuffer因为更快。
常用的方法有:append和insert
网友评论