练气期 String实用类

创建 String 对象的两种方式与区别:

方式一:直接赋值 String s1 = "hsp";

先从常量池查看是否有 "hsp" 数据空间,如果有,直接指向;如果没有则重新创建,然后指向。s1 最终指向的是常量池的空间地址

方式二:调用构造器 String s2 = new String("hsp");

先在堆中创建空间,里面维护了 value 属性,指向常量池的 hsp 空间。如果常量池没有 "hsp" ,重新创建,如果有,直接通过 value 指向。最终指向的是堆中的空间地址

字符串的特性:

String 是一个 final 类,代表不可变的字符序列

字符串是不可变的。一个字符串对象一旦被分配,期内容是不可变的

String 类的常见方法:

equals 比较内容是否相同,区分大小写

equalsIgnoreCase 忽略大小写的判断内容是否相等

length 获取字符的个数,字符串的长度

indexOf 获取字符在字符串对象中第一次出现的索引,索引从 0 开始,如果找不到,返回 -1

lastIndexOf 获取字符在字符串中最后一次出现的索引,索引从 0 开始,如果找不到,返回 -1

substring 截取指定范围的子串

toUpperCase 转换成大写

toLowerCase 转换成小写

concat 拼接字符串

replace 替换字符串中的字符

split 分割字符串

toCharArray 转换成字符数组

compareTo 比较两个字符串的大小,如果前者大,则返回正数,后者大,则返回负数,如果相等,返回 0。

format 格式字符串(%s , %d , %.2f,%c 称为占位符)

这些占位符由后面变量来替换

%s 表示后面由 字符串来替换

%d 是整数来替换

%.2f 表示使用小数来替换,替换后,只会保留小数点两位, 并且进行四舍五入的处理

%c 使用 char 类型来替换

StringBuffer 类:
基本介绍:

java.lang.StringBuffer 代表可变字符序列,可以对字符串内容进行增删

很多方法与 String 相同,但 StringBuffer 是可变长度的

StringBuffer 是一个容器。

String VS StringBuffer

String 保存的是字符串常量,里面的值不能更改,每次 String 类的更新实际上就是更改地址,效率较低。

StringBuffer 保存的是字符串变量,里面的值可以更改,每次 StringBuffer 的更新实际上可以更新内容,不用每次更新地址,效率较高

String 和 StringBuffer 相互转换              :

public class StringAndStringBuffer {
    public static void main(String[] args) {
        //看 String --> StringBuffer
        String str = "hello tom";
        //方式 1 使用构造器
        //注意: 返回的才是 StringBuffer 对象,对 str 本身没有影响
        StringBuffer stringBuffer = new StringBuffer(str);
        //方式 2 使用的是 append 方法
        StringBuffer stringBuffer1 = new StringBuffer();
        stringBuffer1 = stringBuffer1.append(str);
        
        //看看 StringBuffer ->String
        StringBuffer stringBuffer3 = new StringBuffer("韩顺平教育");
        //方式 1 使用 StringBuffer 提供的 toString 方法
        String s = stringBuffer3.toString();
        //方式 2: 使用构造器来搞定
        String s1 = new String(stringBuffer3);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值