俺就是面试题的搬运工⑦

30、String是最基本的数据类型吗?

基本数据类型:

整型:byte int long short

浮点型: float double

字符型: char

布尔型:boolean

string类是final类型的,因此不可以继承这个类,不能修改这个类.为了提高效率节省空间,我们应该用stringbuffer类,创建string对象有两种方式:

String s=new String(“1111”)

"“和new,”"在字符串常量池创建一个字符串1111,在内存中通过new 创建一个第一步的字符串的副本对象

31、String s=“Hello”;s=s+“world!”;这两行代码执行后,原始的String对象中的内容到底变了没有?

string:字符串常量:字符串是不可变序列:字符串对象一旦创建 字符序列是无法更改的

32、是否可以继承String类?

string是final类,不能被继承

33、String s = new String(“xyz”);创建了几个String Object?

2个,通过""在字符串常量池中创建一个xyz,通过new创建一个"xyz"的副本字符串对象

34、String 和StringBuffer,StringBuilder的区别

string是字符串常量

stringbuffer和stringbuilder是字符串缓冲区

相同之处:

  1. 都可以来表示字符串序列
  2. 都是final类,不能被继承

string和stringbuffer,stringbuilder不同之处:

  1. string是字符串常量:对象一旦创建 字符序列不能更改
    stringbuffer和stringbuilder是字符串缓冲区:字符序列可以更改

stringbuffer和stringbuilder相同之处:

  1. api兼容(两个类的方法完全相同)
  2. 都是字符串缓冲区:字符序列可变

不同之处:

  1. 版本不同:
    stringbuffer是1.0版本
    stirngbuilder是1.5版本
  2. stringbuffer线程安全效率低
    stringbuilder线程不安全效率高

35、如何把一段逗号分割的字符串转换成一个数组?

常用的操作string的方法

split() 将字符串分割

substring(int begin,int end) 获取begin到end-1的字符串

concat(string str) 把参数字符拼接到当前字符串后面

replace(string str,string str) 后面替换前面

你可能感兴趣的:(面试题,字符串,java,jdk,servlet,object)