Java面试题---String
# String 是基本数据类型吗
String 是类,不是基本数据类型
# String 是可变的话?
String 是 final 类型的,不可变
# 如何比较两个字符串的值一样,又如何比较两个字符串是否为同一个对象?
比较字符串的值是否相同用 equals
比较字符串对象是否为同一个用 ==
# switch 中可以用 String 吗?
jdk7 + 的 switch 中可以使用 String 类型
# String str = new String (“abc”); 创建了几个对象?
创建了两个或者一个,"abc" 本身创建了对象在常量池中,又通过 new 创建了对象在堆中。
# String,StringBuffer,StringBuilder 有什么区别?
最大的区别就是 String 不可变,而后者两个可变,StringBuffer 是线程安全的,StringBuilder 线程虽然不安全但是速度较快。
# String.trim () 方法去掉的是哪些字符?
trim 去掉的是字符串首尾的空白字符
# String 可以被子类继承吗?
既然 String 是 final 的,所以不能被继承。
# String 和 byte [] 两者之间如何转化?
String 转换为 byte [] 通过 String 类的 getBytes 方法,
byte [] 转化为 String 通过 new String (byte []) 构造器