博客
关于我
JDK之String源码解读(五)
阅读量:276 次
发布时间:2019-03-01

本文共 1382 字,大约阅读时间需要 4 分钟。

Java String类常用方法解析

1. startsWith(String prefix, int toffset)

说明

该方法用于判断当前字符串是否从指定位置开始以指定的前缀开头。即是否在给定的偏移量位置之后,字符串的前缀与指定的前缀完全一致。

示例

String str = "HelloWorld";boolean starts = str.startsWith("Hello", 3);// 假设str的长度为10,str.substring(3)为"World"// "World"不以"World"开头,故starts为false

特点

  • 参数为prefix和int偏移量toffset。
  • toffset必须在字符串长度内,否则返回false。
  • 如果字符串长度小于prefix长度,直接返回false。

2. startsWith(String prefix)

说明

判断当前字符串是否以指定前缀开头,无需指定偏移量,默认从字符串开头开始判断。

示例

String str = "HelloWorld";boolean starts = str.startsWith("Hello");// 返回true

特点

  • 只需传递前缀作为参数。
  • 如果字符串长度小于前缀长度,返回false。
  • 适用于常见的前缀检查场景。

3. endsWith(String suffix)

说明

判断当前字符串是否以指定后缀结尾。

示例

String str = "HelloWorld";boolean ends = str.endsWith("d");// 返回true

特点

  • 仅需传递后缀作为参数。
  • 后缀可以是单字符,也可以是多字符。
  • 适用于文件扩展名或路径结尾检查。

4. hashCode()

说明

返回当前字符串的哈希码值。String的哈希码计算公式为:s[0] * 31^(n-1) + s[1] * 31^(n-2) + ... + s[n-1]

示例

String str = "abc";int hash = str.hashCode();// hash值为 (a * 31^2) + (b * 31^1) + (c * 31^0)

特点

  • 用于缓存和比较字符串唯一性。
  • 不同字符串可能有相同的哈希码,但概率极低。

5. indexOf(int ch)

说明

查找字符串中第一个等于指定字符的位置。如果字符不在字符串中,返回-1。

示例

String str = "abcde";int index = str.indexOf('c');// 返回2

特点

  • 参数为单个字符int值。
  • 可用于查找字符串中的字符位置。
  • 适用于处理字符替换或删除。

6. lastIndexOf(int ch)

说明

查找字符串中最后一个等于指定字符的位置。如果字符不在字符串中,返回-1。

示例

String str = "cbaabc";int index = str.lastIndexOf('a');// 返回4

特点

  • 与indexOf类似,但查找最后一个字符。
  • 适用于处理逆向查找或删除操作。

总结

以上方法为Java String类中常用的字符串操作接口,涵盖了前缀、后缀、哈希码、字符查找等功能。理解这些方法有助于更高效地处理字符串操作,提升代码的性能和可读性。

转载地址:http://ayrx.baihongyu.com/

你可能感兴趣的文章
python 字符串显示中文_Python字符串开头的b"、u"、r"与中文乱码
查看>>
Python 字符串的几种拼装方式
查看>>
python 存入数据库bigint_python基础_MySQL的bigint类型
查看>>
python 学习 面向对象编程
查看>>
Python 学习日记第三篇 -- 字典
查看>>
Python 学习笔记(一)Data type
查看>>
python 安装echarts
查看>>
python 安装opencv及问题解决
查看>>
Python 安装程序:“写入文件 C:\Python27\pythonw.exe 时出错“
查看>>
Python 安装避坑指南:从入门到进阶
查看>>
Python 安装配置详解
查看>>
Python 常见的错误类型和继承关系
查看>>
python 常量_零基础学Python系列之一:Python的变量与常量
查看>>
Python 并发编程
查看>>
python 微信扫码登录_python实现微信第三方网站扫码登录(Django)
查看>>
Python 快速下载依赖
查看>>
python实现非参数统计的Cochran检验 (附完整源码)
查看>>
Python 手写数字识别-3-sklearn中的几种算法
查看>>
Python 打开文件注意事项
查看>>
python 批量修改文件名_python windows下批量修改文件名
查看>>