String字符串相关的类与Java比较器概念

一、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接口属于临时性比较。

刷到的面试题记录:
在这里插入图片描述


三、 寄语专区 :

在这里插入图片描述

发布了41 篇原创文章 · 获赞 13 · 访问量 4754

猜你喜欢

转载自blog.csdn.net/weixin_46163590/article/details/104330136