常用类:
math:数学方法。PI
Random SecureRandom :随机数,安全随机数
Date :日期
1.自动化脚本写日志,一般要把时间戳写到日志文件中,方便定位问题。
2.自动化脚本有定时任务的场景,设置定时任务时不能设置死的时间,
获取当前时间后往后延长几分钟,作为定时任务启动时间。
3.定位性能问题,在进出函数的时候打印时间,计算函数执行耗时。常用类:
String:字符串相关的操作
StringBuilder:+连接效率低,大量的字符串连接,用StringBuilder来实现
StringJoiner:join方法的升级版public class Demo02 {
public static void main(String[] args) {
String s1 = "Hello World";
System.out.println(s1.toUpperCase()); // 全大写
System.out.println(s1.toLowerCase()); //全小写
// 只输入开始的索引,取开始索引到字符串末尾
System.out.println(s1.substring(6));
//开始索引,结束索引,包含开始,不包含结束的子串
System.out.println(s1.substring( 6,8));
//从投开始,第一个o的位置
System.out.println(s1.indexOf('o'));
//从后开始,第一个o的位置
System.out.println(s1.lastIndexOf('o'));
String s2 = "E:\\LearnJava\\src\\day06\\Demo01.java";
System.out.println(getPostfix(s2));
String a = "aBC";
String b = "abc";
String c = "azz";
//比较字符串的大小 ,返回第一个不相等字符的差。
System.out.println(a.compareTo(b));
System.out.println(a.compareTo(c));
System.out.println(a == b);// ==比较的是内存地址
System.out.println(a.equals(b)); //判断是否完全相等
System.out.println(a.equalsIgnoreCase(b)); //判断是否相等,不区分大小写
字符串的拼接,1-1000之间的数字,用逗号分割拼接到一起
String ;不可变的
str = ""; 这是一个对象
str = "1"; 这是另外一个对象
str = "1,"; 这是另外一个对象
拼接的过程产生大量的临时对象,占用内存
StringBuilder/StringBuffer:可变类
整个过程中,只有sb这一个对象
StringBuilder 线程不安全 单线程下使用的,比StringBuffer效率更高
StringBuffer 线程安全,多线程下使用。
String str = "";
long begin = (new Date()).getTime();
for (int i = 1 ; i<=1000; i++){
str = str + i + ",";
}
long end = (new Date()).getTime();
System.out.println(str);
//1000个数字,15ms
//3000
//5000
//10000
System.out.println("耗时:"+(end-begin) + "ms");
StringBuilder sb = new StringBuilder();
begin = (new Date()).getTime();
for (int i = 1 ; i<=100000; i++){
sb.append(i).append(",");
}
end = (new Date()).getTime();
System.out.println(sb.toString());
//1000个数字,15ms
//3000
System.out.println("耗时:"+(end-begin) + "ms");
//split (分割)、join(连接)
String path = "E:\\LearnJava\\src\\day06\\Demo01.java";
String [] temp = path.split("\\\\");
System.out.println(Arrays.toString(temp));
String patr2 = String.join("/",temp);
System.out.println(patr2);
String version = "8.2.1";
String [] temp2 = version.split("\\."); // .\\ 特殊符号时,要进行转义
System.out.println(Arrays.toString(temp2));
String version1 = "1 2 3 4 5 1 ";
String [] temp3 = version1.split(" ");
System.out.println(Arrays.toString(temp3));
String[] names = {"aa","bb","cc","dd"};
//Hello ,aa,bb,cc,dd!
//分割符,前缀,后缀
//不涉及前后缀时,用Strin.join简单。
StringJoiner sj = new StringJoiner(" |