- /*
- 2.现有字符串“qazx234567WSXC7654312”。编写程序实现以下功能:
- (1)截取并打印该字符串中的字母部分,然后分别求出这两段字母的长度并打印输出
- (2)将第一段字母转为大写,第二段字母转为小写,然后拼接两段字母并打印
- * */
- public class Demo {
- public static void main(String[] args) {
- String str = "qazx234567WSXC7654312";
- String s1 = str.substring(0,4);
- String s2 = str.substring(10,14);
- int l1 = s1.length();
- int l2 = s2.length();
- System.out.println(s1+"------"+l1);
- System.out.println(s2+"------"+l2);
-
- String s3 = s1.toUpperCase();
- String s4 = s2.toLowerCase();
- System.out.println(s3+s4);
- }
- }
复制代码
当时没有想到toUpperCase方法和toLowerCase方法,是用toCharArray转成字符数组做的,费了挺多功夫,现在忘得特别快,
2. 分别说出StringBuffer与String、StringBuilder的区别?
答案:
相同点:都可以看成是一种容器,最终都会变成字符串。
不同点:
(1)从内容上看:
String是内容不可变的;
StringBuffer和StringBuilder是内容可变的。
(2)从线程是否安全和效率上看:
String中的对象是不可变的,也可以理解为常量,线程安全,效率低;
StringBuffer是同步的,线程安全,效率低;
StringBuilder是不同步,非线程安全,效率高。
(3)从执行效率上看:
StringBuilder > StringBuffer > String
3. 谈谈Map接口和Collection接口的区别?
答案:
相同点:
Collection和Map都是java.util包下的集合接口,Collection和Map属于同一层次。
不同点:
(1)Map是双列的,Collection是单列的
(2)Map集合存储的元素是成对出现的,Map集合的键是唯一的,值是可重复的。Collection集合存储元素是单独出现的,Collection的儿子Set是唯一的,List是可重复的。
(3)Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效。
4.线程生命周期的六种状态有新建状态、阻塞状态、可运行状态、等待状态、运行状态、死亡状态。 我记得老师上课时候说的是五种状态,这里的可运行状态我还是想不大通,可运行状态和等待状态又有什么区别吗,可运行,等待运行,不都是等待操作系统给其分配执行权吗
|
|