JAVA面试题

1. String和StringBuilder的区别(final)?StringBuffer和StringBuilder的区别?

在java中提供三个类String 、StringBuillder、StringBuffer来表示和操作字符串。字符串就是多个字符的集合。

1. String是内容不可变的字符串。String底层使用了一个不可变的字符数组(final char[])

private final char value[ ];            

String str =new String(“bbbb”);

而StringBuillder StringBuffer,是内容可以改变的字符串。StringBuillder StringBuffer底层使用的可变的字符数组(没有使用final来修饰)

2.最经典就是拼接字符串。

String进行拼接.String c =“a”+”b”;

StringBuilder或者StringBuffer

StringBuilder sb = new StringBuilder();

sb.apend(“a”).apend(“b”)

拼接字符串不能使用String进行拼接,要使用StringBuilder或者StringBuffer

3.StringBuilder是线程不安全的,效率较高.

  而StringBuffer是线程安全的,效率较低。

你可能感兴趣的:(JAVA面试题)