第十五章字符串

一、使用String对象存储字符串

String类位于java.lang包中,系统默认导包
String s=“HolloWorld”;
String s=new String();
String s=new String(“HolloWorld”);

二、String的方法

String的方法不会影响自身

1.length();字符串的长度,空格也算字符长度,\解释为一个转义符,\t转义t还是一个字符长度
    public int length(){return value.length;}
2.equals( );比较存储在两个字符串对象的内容是否一致 
3.equalsIgnoreCase();英文忽略大小写
4.toLowerCase();英文全部小写
5.toUpperCase();
英文全部大写
6.concat();连接符
7.indexOf(int ch);
  indexOf(String value);搜索第一个出现的字符ch或(字符串value),如果没有找到字符或字符串,则返回-1
8. lastIndexOf(int ch);
   lastIndexOf(String value);
搜索最后一个出现的字符ch(或字符串value),如果没有找到字符或字符串,则返回-1
 9.trim();返回一个前后不含任何空格的调用字符串的副本,中间的空格不能去掉
 10.substring(int index);提取从位置索引开始的字符串部分,包含开始位置的数据

 11.substring(int beginindex,int endindex);
 提取beginindex和endindex之间的字符串部分,范围:开始位置的数据和结束位置前一个的数据
 beginindex: 字符串的位置从0开始算;endindex: 字符串的位置从1开始算 
 12.split(); 将一个字符串分割为子字符串,结果作为字符串数组返回

三、StringBuffer类

String增强版
对字符串频繁修改(如字符串连接)时,使用StringBuffer类可以大大提高程序执行效率
在这里插入图片描述

gc

public void gc()运行垃圾回收器。调用此方法意味着 Java 虚拟机做了一些努力来回收未用对象,以便能够快速地重用这些对象当前占用的内存。当控制从方法调用中返回时,虚拟机已经尽最大努力回收了所有丢弃的对象。
名称 gc 代表“垃圾回收器”。虚拟机根据需要在单独的线程中自动执行回收过程,甚至不用显式调用 gc 方法。
方法 System.gc() 是调用此方法的一种传统而便捷的方式。

四、StringBuffer类的方法

StringBuffer的方法可以改变自身的值

append();StringBuffer的尾部追加字符串
toString();StringBuffer转换成String类型
intsert(插入的位置,插入的内容);插入的位置:在下标的位置

五、扩展StringJoiner

  • StringJoiner跟StringBuffer一样,可以看成一个容器,创建之后里面的内容 是可变的
  • 作用:提高字符串的操作效率
  • JDK8出现的

StringJoiner的构造方法

在这里插入图片描述

StringJoiner的成员方法

在这里插入图片描述

//创建一个对象,并指定中间的间隔符号
StringJoiner stringJoiner=new StringJoiner("---");
//添加元素
stringJoiner.add("123").add("123").add("123");
//打印元素
System.out.println(stringJoiner);
------结果:
123---123---123
//创建一个对象,并指定中间的间隔符号
StringJoiner stringJoiner01=new StringJoiner(",","[","]");
//添加元素
stringJoiner01.add("aaa").add("bbb").add("ccc");
//字符长度:所有字符的长度
int len=stringJoiner01.length();
System.out.println("字符长度"+len);
//将stringJoiner转换成字符串
String str=stringJoiner01.toString();
System.out.println(str);
//打印元素
System.out.println(stringJoiner01);
--------结果:
字符长度13
[aaa,bbb,ccc]
[aaa,bbb,ccc]

六、字符串原理

①等号右边没有变量

在这里插入图片描述
②等号右边有变量
一个加号,堆内存中两个对象
JDK8以前底层使用StringBuilder
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

③等号右边有变量-JDK8底层

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值