一、String字符串相关的类
String、Stringbuffer、StringBuilder三者的异同?
String:不可变得字符序列;
Stringbuffer:可变的字符序列;线程安全的,效率低。
Stringbuilder:可变的字符序列;线程不安全的,效率高。 (jdk5.0新增)
三者相同点:底层都是char型数组。
使用场景:
1.涉及到多线程,而且是共享数据时,使用Stringbuffer
2.不涉及到多线程或者是涉及到多线程但不是共享数据时使用,Stringbuilder
3.测试字符串是否以指定的前缀开始、拼接、删除、时使用:String
对比三者的效率:
从高到低排列:
Stringbuilder > Stringbuffer >String
增:append(xxx)
删:delete
改:setCharAt /replace
查:charAt
插:insert
长度:length();
遍历:for +charAt()
@Test
public void test1() {
long time =System.currentTimeMillis();
System.out.println(time); //时间戳
}
}
@Test
public void test2() {
// 构造器1:date():创建一个对应当前时间的对象
Date date1 = new Date(0);
System.out.println(date1.toString());
System.out.println(date1.getTime());
// 构造器2:
Date date2 = new Date(1581758671137);
System.out.println(date2);
二、 Java两种比较器:
两种接口概念与规则:
Comparable接口与Comparator的使用对比:
1.Comparable接口的方式一但指定,保证comparable接口实现类的的对象在任何位置都可以比较大小。
2.Comparator接口属于临时性比较。
刷到的面试题记录: