【Java】String类

本文探讨了Java中String类的字符串不可变性的原因,详细解释了compareTo()用于字典序比较,equals()用于内容比较,以及split()方法的分隔功能。提到了转义字符在分隔字符串时的作用,并建议避免使用+进行字符串拼接,因为会产生额外的对象,推荐使用StringBuilder。最后,文章强调了自定义类应重写equals()和hashCode()的重要性。
摘要由CSDN通过智能技术生成

String类存储的字符串不能改变的原因:

字符串存储在value的字符数组中,而访问权限为private
在这里插入图片描述

compareTo()

  1. 按照字典序进行比较的方法
  2. 如果两个字符串不一样长长字符串前一部分与短字符串相同,那么返回长度的差值
  3. 如果两个字符串不一样长长字符串前一部分与短字符串不同,那么返回两个字符串的不一致字符ASCII码差值
    在这里插入图片描述

equals()

  1. 重写的是Object类中的equals()方法
  2. 比较的是内容,与"==“不同的是”=="比较的是地址相同与否,但是Object类中的equals()同样比较的是地址。在这里插入图片描述
    String类重写的equals()
    在这里插入图片描述

split()

  1. 一共重载了两个split()方法:
    在这里插入图片描述
  2. 第一个是按照给定的字符进行分隔,分隔为String[]类型
    在这里插入图片描述4. 第二个是按照给定的字符,从前往后进行分隔为limit段在这里插入图片描述

".“和”|"及其其他的运算符分隔方法

需要添加‘\’进行转义
在这里插入图片描述

""的分隔方法

添加多个斜杠
在这里插入图片描述

多个分隔字符的两种方法

使用"或"运算符
在这里插入图片描述

字符串的截取

使用subString()方法,左闭右开的方式
在这里插入图片描述

trim()

只能去掉左右两边的空格

字符串的拼接

  1. 不建议使用String进行拼接(+=),会产生很多临时对象
  2. 底层使用的是StringBuilder进行创建新字符串

几点注意

自定义的类都建议重写equals()和hashcode()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值