JAVA常用类

String类与StringBuffer类

String

初始化

String 变量名 = new String(字符串);
String 变量名 = "";

String的一个重要特点就是字符串不可变。因为内部是private final char[]

如果更新替换本质上是重建String

常用操作

比较

s1.equals(s2)Boolean类型返回true false

如果用==本质上是对内存地址进行比较,但不一定就是字符串是相同的

忽略大小写比较:equalsIgnoreCase()

子串
"Hello".contains("ll"); // true
"Hello".indexOf("l"); // 2
"Hello".lastIndexOf("l"); // 3
"Hello".startsWith("He"); // true
"Hello".endsWith("lo"); // true
去除空白字符

trim()可以移除字符串首尾空白字符,包括空格\t\r\n;本质上返回一个新的字符串

strip()类似中文的空格字符\u3000也会被移除

isEmpty()isBlank()来判断字符串是否为空和空白字符串

替换

s.replace(sa, sb)s串中所有的sa子串都会被替换为sb

s.replace(re, "")支持正则

转换

s.toUpperCase() s.toLowerCase() s.toCharArray()

分隔字符串

s.split(re)根据正则表达式来分隔字符串

截取

s.substring(n, m)从第n+1个字符截取到第m个字符,默认到尾

拼接

拼接字符串使用静态方法join(),它用指定的字符串连接字符串数组:

String[] arr = {"A", "B", "C"};
String s = String.join("***", arr); // "A***B***C"
格式化

字符串提供了formatted()方法和format()静态方法,可以传入其他参数,替换占位符,然后生成新的字符串:

public class Main {
    public static void main(String[] args) {
        String s = "Hi %s, your score is %d!";
        System.out.println(s.formatted("Alice", 80));
        System.out.println(String.format("Hi %s, your score is %.2f!", "Bob", 59.5));
    }
}
类型转换
其他转字符串

valueOf()

String.valueOf(123); // "123"
String.valueOf(45.67); // "45.67"
String.valueOf(true); // "true"
String.valueOf(new Object()); // 类似java.lang.Object@636be97c
字符串转其他
Integer.parseInt("ff", 16); // 按十六进制转换,255
Boolean.parseBoolean("true"); // true
Boolean.parseBoolean("FALSE"); // false
...

StringBuffer

StringBuffer相当于一个容器,对其操作时只会对其进行操作,而不会产生新的StringBuffer对象

基本方法

序号方法描述
1public StringBuffer append(String s) 将指定的字符串追加到此字符序列。
2public StringBuffer reverse() 将此字符序列用其反转形式取代。
3public delete(int start, int end) 移除此序列的子字符串中的字符。
4public insert(int offset, int i) 将 int 参数的字符串表示形式插入此序列中。
5insert(int offset, String str) 将 str 参数的字符串插入此序列中。
6replace(int start, int end, String str) 使用给定 String 中的字符替换此序列的子字符串中的字符。

StringBuilder

用法是与StringBuffer相同的,有问题就是它不是线程安全的,但是速度很快

System类

arraycopy(src, src_start, dest, dest_start, length)src原数组,dest目标数组;注意最后一个拷贝的元素长度参数不能超过两个数组的长度

getProperties()返回一个Properties对象,封装了系统的所有属性,以键值对形式存在

currentTimeMillis()返回时间戳

Runtime类

getRuntime()返回一个Runtime对象,封装了Java虚拟机进程,可以通过其来获取当前虚拟机的相关信息;再调用这个对象的相关方法就能获取到当前虚拟机的一些性能信息

exec()执行dos命令

Math

相关数学函数

Random

构造方法

Radom() Random(long seed)

生成方法

类型 next类型名();
特殊:int nextInt(int n); 生成[0, n)之间的随机数
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值